Ответы пользователя по тегу Python
  • Как работает цикл while в python?

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

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Я бы делал, наверно, как-то так:
    from tkinter import filedialog as fd
    from pathlib import Path
    selected_file = Path(fd.askopenfile().name)
    print(type(selected_file), selected_file)
    Ответ написан
  • Здравствуйте при написании бота возникла ошибка?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Если эти переменные
    pause = 0
    pause_beseda = 0

    вне функций не нужны, то объяви их внутри функций до первого применения.

    Если нужны вне функций... не знаю я этот ваш ВК, можно ли тут их глобальными объявлять? Насколько это безопасно?
    Ответ написан
  • Выравнивание при выводе строк Python?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Печать по центру - переводи в строчный формат и там метод str.center(width[, fillchar]) с аргументами «где центр будем делать» и опционально «чем заполнять лишнее».
    Что-то типа:
    my_data = 12.34
    print('{0:^}'.center(40).format(my_data))
    Ответ написан
    Комментировать
  • Как это чудо работает (Функция обрабатывает глобальную переменную)?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Когда ты вызываешь a(), функция меняет состояние ячейки в памяти, на которую ссылается x. Соответственно, обратно же оно не вернётся волшебным образом после окончания работы a()?
    Ответ написан
    1 комментарий
  • Значение return и string в Python?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Марка Лутца «Изучаем Python» читать до просветления.
    Ответ написан
    Комментировать
  • Как перейти из строки в множество?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    income = [['211', '218', '108'], ['218', '108', '548']]
    outcome = [[{211},{218},{108}],[{218},{108},{548}]]
    
    
    def toset(argument):
        for number, element in enumerate(argument):
            argument[number] = set()
            argument[number].update({int(element)})
        return argument
    
    
    print(list(map(toset, income)) == outcome)

    Тут ответ на твой первоначальный вопрос.
    Ответ написан
  • Вывод информации телеграм бот?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Где-то должна быть БД, а в ней таблица с названиями городов. Надо в эту таблицу добавить колонку с номерами городов (уникальными), или создать новую таблицу соответствия города номеру, и по этой колонке номеров находить город по номеру, а потом передавать сам город так же в запрос db.check_product(город), если я правильно понял смысл этого кода.
    Ответ написан
  • Скажите ребята, обязательно обновлять на новую версию язык программирования Python?

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

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    В общем, так:
    сам я искал такого человека некоторое время назад. Искал через знакомых профи-питонистов. Предлагал 1-2 тыс. в день. Никто не согласился. Потому что это мало. Сейчас менторство стоит где-то от полутора тысяч рублей в час.

    Сам я закончил три курса по Python - два бесплатных в инете (базовый и продвинутый) и один на работе, "python для аналитиков". Причем это на базе довольно неплохого понимания материальной базы (11 лет в поддержке), небольшом опыте низкоуровневого программирования (assembler, C++ для ардуинки, VBA, bash и т.п. околоИТ опыт). И - скажу так... толку мало. Именно потому, как ты и пишешь - не всегда понятно, что откуда вытекает и что там к чему.
    И оказались очень полезны две вещи:
    • книга М. Лутца "Изучаем Python". Это очень большая, полная и довольно нудная в русском переводе книга. Если ты на "ты" с английским - найди английский вариант и читай и прорабатывай. Если с английским не очень, то найди русскую (можно даже 4 издание книги), и прорабатывай. Очень способствует именно словке связи и связке слов.
    • этот сайт: тут можно много интересного узнать, если правильно задавать вопросы. А чтобы правильно задавать вопросы, почитай местные правила и почитай, как задают вопросы опытные старожилы местные.


    Но следует заметить
    Лутц поможет только если ты прям очень хочешь. Прям очень-очень. Потому что он очень большой и нудный книг. Но очень полезный. Но очень нудный.
    Ответ написан
    3 комментария
  • Что это за формула в python?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Меньше 1 потому, что в формуле рассматриваются отношения. Отношение квадрата разности координат к квадрату радиуса. И их сумма, в итоге, сравнивается с 1. Грубо говоря, если координаты точки совпадают с центром, сумма будет ноль, всяко меньше 1. Чем дальше от центра и ближе к окружности, тем ближе к 1 результат формулы. Если точка на окружности, формула даст 1. Точка вне окружности - формула даст больше 1.

    Вот и сравнивают с 1 через if.
    Ответ написан
    Комментировать
  • Как сделать вечное вложение слов в список?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    data = []
    word = '1' #  переменная word должна быть в начале цикла, причем не пустая
    while word: #  проверяю, не пустое ли слово введено.
        word = input('Слово: ')
        data.append(word)
    data.pop(len(data)-1) #  удаляю последний "пустой" элемент списка
    print(data)

    переделал вариант SoreMix
    Ответ написан
    Комментировать
  • Что означают "offset", "count" и "filter" в коде для бота в вк?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    В этом коде обозначенные вами слова являются ключами словаря, который в свою очередь является одним из параметров метода method объекта vk_session. Словарь - это объект в фигурных скобках, подробней погуглите python dict.

    Ноль в квадратных скобках - это запись, означающая выбор нулевого элемента последовательности (списка или кортежа, или аналогичного объекта). До нуля в квадратных скобках есть другие квадратные скобки, в них строка - это, вероятно, аналогичный выбор элемента, но не из списка по порядковому номеру, а из словаря по ключу.

    Т.е. в message словарь, из него берут значение по ключу «items».

    Видимо, это значение является списком, и из этого списка берут нулевой по порядку элемент.

    Видимо, этот нулевой элемент является словарём, потому что из него хотят получить значение по ключу «last message». Ну и так далее.
    Ответ написан
    Комментировать
  • Anaconda не Python?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Анаконда - графическая оболочка и менеджер программ, окружений и пакетов. Она включает в себя python и ряд IDE под python. В частности, популярную jupyter notebook. Которая может открывать py файлы как редактор.

    Если хотите запускать файлы py на исполнение, пишите конкретно из папки с вашими программами .py:
    python myfile.py тогда python исполнит ваш файл myfile. Только неплохо помнить, что для корректного исполнения необходимо настроить окружение.
    Ответ написан
  • Как вывести среднее арифметическое между двумя датами в pandas?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Полагаю, это может помочь:
    import pandas as pd
    minimum = 2
    maximum = 5
    df = pd.DataFrame(zip(list(range(1, 6)), list(range(11,66,11))), columns=['data', 'big_data'])
    print(df)
    mask = (df['data'] >= minimum) & (df['data'] < maximum)
    print(mask)
    df.loc[mask]['big_data'].mean()
    Ответ написан
    Комментировать
  • Как создать таблицу при помощи класса Table в библиотеке PySimpleGUI?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Прямо по вашей ссылке явно написано:
    List[List[Union[str, int, float]]]
    Я так понимаю, список списков.
    Ответ написан
  • Как преобразовать кортеж в строке в кортеж?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    a = '(255,0,0)'
    b = tuple(int(element) for element in a[1:-1].split(','))
    print(type(b), b)

    (Сделал свой велосипедик из варианта SoreMix чисто порешать задачку; не уверен, что правильно, но кажется должно работать).
    Ответ написан
    3 комментария
  • Как сделать что бы функция отобразилась в основном скрипте?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    По сути вопроса:
    я думаю, что надо, во-первых, чтобы функция возвращала значение нужной переменной. Например, при помощи return
    Во-вторых, есть ощущение, что функции не помешает принимать некоторые параметры, например все эти сикреты, id и т.п. и передавать их классу, чтобы создать нужный объект и вернуть его через return
    В-третьих, я вообще не вижу, где в коде используется balance, но по сути надо просто правильно вызвать функцию и получить отдаваемое ею значение (видимо, экземпляр класса).
    Ответ написан
    Комментировать
  • Как открыть DataFrame?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    У вас просто в URL затесался лишний кусок, я там костылик приделал... Но в проду такое пускать нельзя.
    import requests
    from bs4 import BeautifulSoup 
    import pandas as pd
    url = 'https://mintrans.gov-murman.ru/activities/taxi/reestr_taxi/'
    r = requests.get(url)
    soup = BeautifulSoup(r.text, 'html.parser')
    data = soup.find_all(class_ = 'file')
    a = str(data).split('href="/')
    a_1 = str(a[1]).split('">\n<span')
    a_2 = ''.join(a_1[0].split('amp;'))
    a_3 = 'https://mintrans.gov-murman.ru/' + a_2
    df = pd.read_excel(a_3, skiprows=2)
    Ответ написан
    Комментировать
  • Как в Pandas преобразовать IP в CIDR?

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


    ipaddress provides capabilities to work with IP addresses and networks (both IPv4 and IPv6).

    ip = ipaddress.ip_address('127.0.0.1')
    ip.is_private # True
    ip.is_loopback # True
    ip.is_global # False
    ip.is_multicast # False
    ip.is_reserved # False
    ip.is_unspecified # False
    ip.reverse_pointer # '1.0.0.127.in-addr.arpa'

    net = ipaddress.ip_network('192.168.0.0/28')
    net.is_private # True
    net.hostmask # IPv4Address('0.0.0.15')
    net.num_addresses # 16



    Это из рассылки Вадима Пуштаева https://t.me/pythonetc
    Ответ написан
    Комментировать