Ответы пользователя по тегу Python
  • Как наложить два списка?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    d1 = [1, 0, 1, 0]
    d2 = ['qwe', 'asd', 'zxc', 'wer']
    print([d2[i] for i, _ in enumerate(d2) if d1[i]])
    Ответ написан
    2 комментария
  • Каким образом можно просматривать подключенные usb накопители в python(Windows 7-10)?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    На мой взгляд, бОльшую часть на себя должна брать ОС через api, в частности в python для этого есть win32api и os.
    Вот по ссылке почитайте, мне кажется это близко к тому, то вам надо.
    Ответ написан
  • Ошибка DeprecationWarning: desired_capabilities has been deprecated, please pass in a Service object в Selenium?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Посмотрите по ссылке. Там явно другой синтаксис для Python.
    Ответ написан
    Комментировать
  • Почему решение идёт не так как нужно?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    У тебя в time и, соответственно, в seconds видимо строка получается, переведи её в int.
    Ответ написан
  • Почему вылетает Kernel error при запуске Jupyter Notebook из Anaconda Navigator (новое окружение)?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    В базовом окружении запустите консоль и там выполните
    conda install pywin32
    После этого пробуйте создавать новое окружение. Может возникнуть запрос от винды, типа "можно такой-то проге внести изменения"? Надо согласиться.
    Ответ написан
    Комментировать
  • Можно ли сделать клон базового окружения в Anaconda Navigator?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Вроде как рекомендуют вот так через консольку делать:
    conda create --name <env_name> --clone base
    Сам не пробовал.
    Ответ написан
    Комментировать
  • Как изменить тон голоса в pyttsx?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    В pyttsx можно только выбрать другой голос. В зависимости от голоса тон будет различным.
    import pyttsx3
    engine = pyttsx3.init()
    voices = engine.getProperty('voices')
    for voice in voices:
        engine.setProperty('voice', voice.id)
        engine.say('Hello.')
    engine.runAndWait()
    engine.stop()


    Вариант
    Попробуйте поместить динамик в емкость с газообразным гелием. Тон должен повыситься.
    Ответ написан
    Комментировать
  • Что такое % в питоне?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    % возвращает остаток от деления. Ты делишь а % 60, получается остаток.
    Ответ написан
    Комментировать
  • Как правильно перекодировать текстовый файл utf-8 в Windows-1251?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Время тянется бесконечно долго

    Это 1251 отображенный как 1252. Т.е. ваша программа, читающая и отображающая текст, полагает, что это 1252 кодировка. Наверно, ей надо где-то подсказать в настройках, что она ошибается.
    Ответ написан
    Комментировать
  • Turtle не отвечает при запуске цикла while, как исправить?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Полагаю, вот тут вы найдете примеры, которые помогут построить вашу игру более удачно, без этих бесконечных циклов.
    Ответ написан
    Комментировать
  • Почему ошибка RuntimeError: main thread is not in main loop в python?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    main thread is not in main loop

    означает, что основной поток отсутствует в основном цикле исполнения. Чтобы устранить ошибку, поместите основной поток в основной цикл.
    Ответ написан
  • Как убрать ненужные мне элементы из list?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    wolverine777 ,
    если уж вам нужны все повторы любых встречающихся последовательностей, то вот вам мой
    велосипедик
    s = "XXXXXXAGCCTGCCAAGCAAACTTCACTGGAGXXXXXXTGTGCGTAGCATGCTAGTAACTGCAXXXXXXTCTGAATCTTTCAGCTGCTTGTXXXXXXTGGGCCTCTCACAAGGCAGAGTGTCTTCATGGGACTTTGATATTTATTTTTGTACAACCTAAGAGGAACAAATCCTTTGACACTGACAAATTGGCTTCCATATTTTATACCTTAATCATCTCCATGTTGAATTCATTGATCAACAGTTTAAGAAAAAAAGATGTAAAAATGCTTTTAGAAAGAGAGGCAAAGTTATGCACAATAACTTCTCATGAAGTCACAGTTTGTTAAAAGTTGCCTTAGTTCACAATAAATAATTATGTATGCTCTATAATTTCAGTGA"
    import re
    viewed = {}
    for i, _ in enumerate(s):
        n = 0
        while n <= (len(s)-i):
            new_string = s[i:i+n]
            n += 1
            if len(new_string) > 1:
                if new_string not in viewed:
                    matches = re.split(new_string, s)
                    counter = len(matches) - 1
                    if counter > 1:
                        viewed.update({new_string: counter})
    print(viewed)

    Результат
    {'AA': 30,
     'AAA': 10,
     'AAAA': 3,
     'AAAAA': 2,
     'AAAAG': 2,
     'AAAG': 4,
     'AAAGA': 2,
     'AAAGT': 2,
     'AAAGTT': 2,
     'AAAT': 4,
     'AAC': 6,
     'AACA': 2,
     'AACT': 3,
     'AACTT': 2,
     'AACTTC': 2,
     'AAG': 9,
     'AAGA': 4,
     'AAGAG': 2,
     'AAGT': 3,
     'AAGTT': 2,
     'AAT': 11,
     'AATA': 3,
     'AATAA': 2,
     'AATC': 3,
     'AATT': 4,
     'AC': 17,
     'ACA': 9,
     'ACAA': 6,
     'ACAAA': 2,
     'ACAAAT': 2,
     'ACAAT': 2,
     'ACAATA': 2,
     'ACAATAA': 2,
     'ACAG': 2,
     'ACAGT': 2,
     'ACAGTT': 2,
     'ACAGTTT': 2,
     'ACC': 2,
     'ACCT': 2,
     'ACT': 6,
     'ACTG': 3,
     'ACTT': 3,
     'ACTTC': 2,
     'AG': 24,
     'AGA': 6,
     'AGAA': 2,
     'AGAAA': 2,
     'AGAG': 3,
     'AGAGG': 2,
     'AGC': 4,
     'AGCA': 2,
     'AGG': 3,
     'AGGC': 2,
     'AGGCA': 2,
     'AGT': 9,
     'AGTG': 2,
     'AGTT': 5,
     'AGTTT': 2,
     'AT': 29,
     'ATA': 7,
     'ATAA': 4,
     'ATAAT': 2,
     'ATAATT': 2,
     'ATAT': 2,
     'ATATT': 2,
     'ATATTT': 2,
     'ATC': 5,
     'ATCA': 2,
     'ATCT': 2,
     'ATG': 9,
     'ATGC': 4,
     'ATGCT': 3,
     'ATGT': 3,
     'ATGTA': 2,
     'ATT': 8,
     'ATTG': 2,
     'ATTT': 4,
     'ATTTT': 2,
     'CA': 29,
     'CAA': 10,
     'CAAA': 4,
     'CAAAT': 2,
     'CAAC': 2,
     'CAAG': 2,
     'CAAT': 2,
     'CAATA': 2,
     'CAATAA': 2,
     'CAC': 6,
     'CACA': 4,
     'CACAA': 3,
     'CACAAT': 2,
     'CACAATA': 2,
     'CACAATAA': 2,
     'CACT': 2,
     'CACTG': 2,
     'CAG': 5,
     'CAGT': 3,
     'CAGTT': 2,
     'CAGTTT': 2,
     'CAT': 7,
     'CATG': 4,
     'CC': 9,
     'CCA': 3,
     'CCAT': 2,
     'CCT': 6,
     'CCTT': 3,
     'CCTTA': 2,
     'CT': 25,
     'CTA': 3,
     'CTC': 4,
     'CTCA': 2,
     'CTCT': 2,
     'CTG': 6,
     'CTGA': 2,
     'CTGC': 3,
     'CTT': 11,
     'CTTA': 2,
     'CTTC': 4,
     'CTTCA': 2,
     'CTTT': 4,
     'CTTTG': 2,
     'CTTTGA': 2,
     'GA': 18,
     'GAA': 6,
     'GAAA': 2,
     'GAAT': 2,
     'GAC': 3,
     'GACA': 2,
     'GAG': 4,
     'GAGG': 2,
     'GAT': 3,
     'GC': 17,
     'GCA': 6,
     'GCAA': 2,
     'GCAAA': 2,
     'GCC': 4,
     'GCCT': 3,
     'GCT': 6,
     'GCTT': 3,
     'GG': 7,
     'GGA': 3,
     'GGC': 4,
     'GGCA': 2,
     'GGG': 2,
     'GT': 18,
     'GTA': 5,
     'GTAA': 2,
     'GTC': 2,
     'GTG': 3,
     'GTT': 7,
     'GTTA': 2,
     'GTTG': 2,
     'GTTT': 2,
     'TA': 24,
     'TAA': 10,
     'TAAA': 3,
     'TAAAA': 2,
     'TAAC': 2,
     'TAACT': 2,
     'TAAG': 2,
     'TAAGA': 2,
     'TAAT': 3,
     'TAATT': 2,
     'TAC': 2,
     'TAG': 4,
     'TAGT': 2,
     'TAT': 8,
     'TATA': 2,
     'TATG': 3,
     'TATGC': 2,
     'TATT': 3,
     'TATTT': 2,
     'TATTTT': 2,
     'TC': 21,
     'TCA': 11,
     'TCAC': 4,
     'TCACA': 3,
     'TCACAA': 2,
     'TCAG': 2,
     'TCAT': 4,
     'TCATG': 2,
     'TCC': 3,
     'TCCA': 2,
     'TCCAT': 2,
     'TCT': 7,
     'TCTC': 3,
     'TCTCA': 2,
     'TCTT': 2,
     'TG': 29,
     'TGA': 8,
     'TGAA': 3,
     'TGAAT': 2,
     'TGAC': 2,
     'TGACA': 2,
     'TGAT': 2,
     'TGC': 9,
     'TGCA': 2,
     'TGCC': 2,
     'TGCT': 4,
     'TGCTT': 2,
     'TGG': 4,
     'TGGG': 2,
     'TGT': 8,
     'TGTA': 3,
     'TGTT': 2,
     'TT': 29,
     'TTA': 9,
     'TTAA': 3,
     'TTAG': 2,
     'TTAT': 4,
     'TTATG': 2,
     'TTC': 8,
     'TTCA': 6,
     'TTCAC': 2,
     'TTCAG': 2,
     'TTCAT': 2,
     'TTG': 9,
     'TTGA': 4,
     'TTGAT': 2,
     'TTGT': 3,
     'TTT': 10,
     'TTTA': 4,
     'TTTAT': 2,
     'TTTC': 2,
     'TTTCA': 2,
     'TTTCAG': 2,
     'TTTG': 4,
     'TTTGA': 2,
     'TTTGT': 2,
     'TTTT': 3,
     'TTTTA': 2,
     'XT': 3,
     'XTG': 2,
     'XX': 12,
     'XXT': 3,
     'XXTG': 2,
     'XXX': 8,
     'XXXT': 3,
     'XXXTG': 2,
     'XXXX': 4,
     'XXXXT': 3,
     'XXXXTG': 2,
     'XXXXX': 4,
     'XXXXXT': 3,
     'XXXXXTG': 2,
     'XXXXXX': 4,
     'XXXXXXT': 3,
     'XXXXXXTG': 2}
    Ответ написан
    3 комментария
  • Всегда ли методу нужны скобки?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Через точечку - это атрибуты экземпляра какого-либо класса. Атрибут может быть либо параметром (как переменная или константа, только относящаяся к конкретному экземпляру, его собственный параметр), либо методом (встроенный инструмент, персональная функция экземпляра, позволяющий менять значения некоторых параметров экземпляра, либо ещё что-нибудь делать с этим экземпляром).

    Так вот - если через точечку у нас параметр, содержащий некоторое значение, то обратиться к нему нужно без скобочек. А если это метод, функция, то как всякая функция он вызывается со скобками, в скобках могут указываться обязательные и не обязательные аргументы функции.

    То, что в вашем случае вывод одинаков, ничего не говорит о том, можно ли скобки использовать или не использовать. Это лишь внешне похожие проявления довольно различных процессов. Сейчас они похожи на выходе, но никто не гарантирует без тщательного анализа, что и дальше будет так же.
    Без скобок вы получаете значение. Со скобками - результат работы функции.
    Ответ написан
    Комментировать
  • Как отправить несколько JSON на один url?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    valerabiglove,
    вам надо сложить имеющиеся у вас словари (они же “JSONы») в список.
    Потом при помощи цикла перебирать элементы этого списка и подставлять их в переменную data и тут же внутри цикла вызывать свой отправляющий код, где эта переменная передается этому коду как параметр (так же, как у вас и сделано). Это реально первые несколько уроков любых бесплатных курсов Python.
    my_list = [{'a': 1}, {'a': 7}]
    for element in my_list:
        print(element)
    Ответ написан
    Комментировать
  • Какую ошибку допустила в цикле?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Набросал свой
    велосипедик
    def func(x, y):
        return not (((x > 1) and ((x + y) >= 6)) or (y >= 5))
    
    def count_func(n):
        counter = 0
        for x in range(n):
            for y in range(n):
                if func(x, y):
                    counter += 1
        return counter
    
    for n in range(100):
        print(n, count_func(n))
    Ответ написан
    Комментировать
  • Как создать пирамиду из папок?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Может, это поможет?
    Ответ написан
  • RuntimeWarning: coroutine 'TelegramBaseClient.connect' was never awaited tclient.connect()?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Вот эта строка, похоже, должна быть другой:
    result = tclient(GetDialogsRequest(
                     offset_date=last_date,
                     offset_id=0,
                     offset_peer=InputPeerEmpty(),
                     limit=chunk_size
                 ))


    Тут экземпляр класса TelegramClient вызывается как будто создается экземпляр из экземпляра. Я не знаю, можно ли так, и что тут хотели сделать.

    Возможно, просто забыли дописать вызов какого-то метода у tclient, к которому в скобках аргументы.

    Что-нибудь типа:
    result = tclient.some_method(GetDialogsRequest(
                     offset_date=last_date,
                     offset_id=0,
                     offset_peer=InputPeerEmpty(),
                     limit=chunk_size
                 ))
    Ответ написан
    Комментировать
  • Как добавлять новые данные в след строку csv?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Первое, что пришло в голову: загрузить существующий файл csv в какой-либо датафрейм, конкатенировать его с новым df и итог выгрузить в csv.

    Но можно и по-другому, можно выгружать новое во временный файл, потом его уже без pandas читать построчно и добавлять к существующему csv.

    Либо можно заморочиться и выгружать данные из df в открытый на дозапись csv. Но как именно это сделать, надо подумать.
    Ответ написан
    Комментировать
  • Как получать последние записи sqlite?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Перед print добавить
    search.reverse()
    Ответ написан
  • Почему я не могу получить доступ к атрибуту класса?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Вам надо разобраться, как работают импорты.
    Я взял ваш код, разложил по модулям (поименовал их как мне захотелось), импортировал из модулей классы и всё заработало.
    Например, в файле меню импорт выглядит так:
    from zm_window import Window

    а в файле zm_window.py - так:
    from zm_circle import Circle
    from zm_zm import Anaconda

    ну и так далее.

    Всё работает, как настоящее.
    607161b4b8858392343208.png
    Ответ написан