Задать вопрос
Профиль пользователя заблокирован сроком с 1 апреля 2025 г. и навсегда по причине: подозрительная активность
  • Не могу понять как решить ошибку?

    @kurrbanov
    Пишу бэкенд на Питоне
    c = (+,-,*,/)

    Естественно вы получите ошибку. Посмотрите для начала что может быть элементом кортежа.
    Спойлер:
    Математические операторы никогда ими не могут быть

    Вместо того, чтобы перечислять в кортеже математические операции, укажите их явно:
    c = (a + b, a - b, a * b, a / b)
    f = random.choice(c)
    print(f)
    Ответ написан
    Комментировать
  • OSError: [WinError 193] %1 не является приложением Win32 - как решить?

    trapwalker
    @trapwalker Куратор тега Python
    Программист, энтузиаст
    Нужно посмотреть что у вас в "C:\Users\User\AppData\Local\Programs\Python\Python36-32\lib\site-packages\numpy\_distributor_init.py"
    Откуда берется значение filename. Возможно туда попадает не путь к dll, а плейсхолдер %1 из какого-нибудь скрипта при некорректной установке библиотеки.
    Ответ написан
    Комментировать
  • Как экспортировать данные из CSV файла в таблицу PostgreSQL при помощи python?

    Vindicar
    @Vindicar
    RTFM!
    Без знания структуры данных и структуры таблицы тут мало что понять можно.
    Но вообще, вместо тупого копирования из csv через copy_from*(), нужно:
    1. Читай файл самостоятельно. Используй модуль csv, он умеет удобно парсить этот формат, в том числе пропускать строку заголовков.
    2. Выбери в своих данных первичный ключ, чтобы понять, когда такая строка уже есть в базе, а когда её ещё нет. При создании таблицы укажи первичным ключом соотв. столбец.
    3. вставляй данные через запрос вида INSERT ... ON CONFLICT UPDATE. Точный синтаксис нужно посмотреть в документации на постгрес, обычно это называется UPSERT.

    Проблема с copy_from() в том, что у тебя таблица БД должна иметь тот же набор столбцов и в том же порядке, что и CSV, хотя это ограничение совершенно необязательно.
    Ответ написан
    2 комментария
  • Написал код на python для бота Discord что б тот кидал картинки, не могу понять в чём проблема или в сайте или в самом коде?

    hottabxp
    @hottabxp Куратор тега Python
    Сначала мы жили бедно, а потом нас обокрали..
    А вы хитрец!)
    Делаем так:
    import requests
    
    response = requests.get('https://www.pixiv.net/en/')
    print(response.text)

    и смотрим в консоль.
    Или так:
    import requests
    
    response = requests.get('https://www.pixiv.net/en/')
    
    with open('1.html','w') as file:
    	file.write(response.text)

    и открываем 1.html в браузере:
    613c87f1923f3624456566.png

    Внимательно смотрим, json ли это?
    Ответ написан
    Комментировать
  • Срабатывает не тот if который должен, что не так?

    @lob4Noff
    Оператор input() имеет строчный тип данных, и он сравнивает значение первых символов. Чтобы ввести именно число (не строку), "оберните" input() в int():

    import random
    
    a = int(input("Введите ОТ скольки рандомизировать: "))
    b = int(input("Введите ДО скольки рандомизировать: "))
    
    if b > a:
        c = random.randint(a, b)
    else:
        c = random.randint(b, a)
        print ('Правильный порядок ОТ и ДО, а не ДО и ОТ как сделали вы! Но число всё равно сгенерировано')
    print (c)
    Ответ написан
    1 комментарий
  • Срабатывает не тот if который должен, что не так?

    hottabxp
    @hottabxp Куратор тега Python
    Сначала мы жили бедно, а потом нас обокрали..
    if b > a:
    b и a в данном случае строки, а не числа.
    Ответ написан
    Комментировать
  • Как сделать по правильному discord.py?

    Goverl
    @Goverl
    Мне 13 лет, и я изучаю программирование.
    Я конечно в этом не разбираюсь, но почему вы вызываете функцию exec в самой же функции exec? Насколько я знаю в нынешней версии discord.py можно не писать pass_context=True
    Ответ написан
  • Что в библиотеке Python numpy означает запись numpy.sum(img==1)?

    fox_12
    @fox_12 Куратор тега Python
    Расставляю биты, управляю заряженными частицами
    Считает количество элементов равных "1"
    >>> a = numpy.array([0,1,1,0,1,1,1,0,0,1])
    >>> numpy.sum(a==1)
    6
    >>> numpy.sum(a==0)
    4
    Ответ написан
    2 комментария
  • Что означает выделенный код в переборе списка в python?

    @MEDIOFF
    Python Developer
    Это генераторное выражение, и очень странно что оно написано оно, ибо sum не принимает генераторы, и должна быть ошибка, должно быть списковое включение:
    return sum([rec.amount for rec in self.records
    if rec.date == today])

    Можно ли его записать более понятно (например через if)?

    Можно, но зачем, это вам надо будет создавать отдельный список и в него добавлять элементы, зачем оно спрашивается
    Что бы подробней узнать про такие выражения вот вам источник

    Поправка: ошибся, с генераторами тоже работает
    Ответ написан
    Комментировать
  • Как получить данные из модели Django?

    @MEDIOFF
    Python Developer
    Первое: objects будет подсвечивать и так как не существующий так как его нет непосредственно в классах model и в тех от которых он наследуется, там хитрый механизм, и он инжектится в класс позже, поэтому он и подсвечивается как несуществующий, но он есть (В PyCharm proffesional будет все ок, потому что там разрабы IDE это ручками все прописали)

    Второе: Что значит не получается получить данные, вы переменную numbers проверяли хотя бы принтом, если данные не приходят на клиент, то это не потому что их нет, а потому что вы в HttpResponse пытаетесь запихнуть питоновский объект, когда он принимает строку или байты, сериализуйте свой объект и только потом отправляйте его
    Ответ написан
    1 комментарий
  • Как исправить resulttoo large в коде?

    fox_12
    @fox_12 Куратор тега Python
    Расставляю биты, управляю заряженными частицами
    Попробовать использовать везде decimal:

    import math
    
    a, alpha, x = 10, 10, 10
    
    y1 = math.log(abs(x**3)) + math.tan(alpha)-pow(math.e, a*(x**2)+x)
    
    print(y1)
    
    # OverflowError: (34, 'Result too large')

    Та же формула обернутая в decimal.
    Выглядит громоздковато, но отрабатывает корректно:

    import math
    import decimal
    
    decimal.getcontext().prec = 100
    
    a, alpha, x = 10, 10, 10
    
    y1 = decimal.Decimal(math.log(decimal.Decimal(abs(decimal.Decimal(x)**decimal.Decimal(3))))) \
        + decimal.Decimal(math.tan(decimal.Decimal(alpha))) \
        - decimal.Decimal(pow(decimal.Decimal(math.e), decimal.Decimal(a)*(decimal.Decimal(x)**decimal.Decimal(2))+decimal.Decimal(x)))
    
    print(y1)
    
    # -4.339370400623091759291109148627508614055728677394889807059531826625028640984354352252576981241604834E+438
    Ответ написан
    Комментировать
  • Как сделать чтобы бот выводил рандомное число после ввода команды?

    SoreMix
    @SoreMix Куратор тега Python
    yellow
    Просто вставьте число в вашу строку и отправьте, не нужно создавать список

    from random import randint
    
    @bot.command()
    async def random(ctx):
        embed = discord.Embed(
            title= f"Рандомное число - {randint(0,100)}",
        )
        await ctx.send(embed=embed)
    Ответ написан
    1 комментарий
  • Ошибка с JSON? Как решить?

    SoreMix
    @SoreMix Куратор тега Python
    yellow
    json - метод

    r.json()
    Ответ написан
    1 комментарий
  • Не стартует пк, вентиляторы работают, помогает быстрое включение и выключение через блок питания, как исправить?

    hint000
    @hint000
    у админа три руки
    Две основных версии: проблема с материнкой или проблема с блоком питания.
    БП заменить проще, так что с него лучше и начать. Если можно для проверки одолжить на час БП у товарища, то используйте эту возможность.

    Дело в конденсаторах (но они есть и на материнке и в БП). Когда вы выключаете и быстро включаете БП, заряд на некоторых конденсаторах ещё сохраняется, это и помогает запуску.
    Ещё дело может быть в чрезмерной просадке напряжения по одному из выходов БП. И в том, какие напряжения по всем линиям питания в момент запуска. БП должен выдать сигнал Power Good, но если он выдаёт его, когда реально по одной из линий "не Good", то материнка стартует и зависает. При повторном запуске сохранившийся в конденсаторах заряд создаёт чуть лучшие условия на момент запуска.
    Ответ написан
    Комментировать
  • Как выбрать значения, которые были загружены день назад от даты в таблице?

    @o5a
    c.execute("select * from mytable where date < date('now', '-1 day')")
    Ответ написан
    Комментировать
  • Как сменить язык на pyowm в 2021?

    hottabxp
    @hottabxp Куратор тега Python
    Сначала мы жили бедно, а потом нас обокрали..
    Как сменить язык на pyowm в 2021?
    Так же, как и 50 лет назад - то есть с помощью документации.

    Так можно получить список поддерживаемых языков:
    from pyowm.owm import OWM
    owm = OWM('d4bfb9a2a08c4fd186672544bb41491c')
    languages = owm.supported_languages
    print(languages)
    >>>['af', 'al', 'ar', 'az', 'bg', 'ca', 'cz', 'da', 'de', 'el', 'en', 'es', 'eu', 'fa', 'fi', 'fr', 'gl', 'he', 'hi', 'hr', 'hu', 'id', 'it', 'ja', 'kr', 'la', 'lt', 'mk', 'nl', 'no', 'pl', 'pt', 'pt_br', 'ro', 'ru', 'se', 'sk', 'sl', 'sp', 'sr', 'sv', 'th', 'tr', 'ua', 'uk', 'vi', 'zh_cn', 'zh_tw', 'zu']

    Так можно получить текущую конфигурацию:
    from pyowm.owm import OWM
    owm = OWM('d4bfb9a2a08c4fd186672544bb41491c')
    config_dict = owm.configuration
    print(config_dict)
    >>>{'subscription_type': <pyowm.commons.databoxes.SubscriptionType - name=free subdomain=api paid=False>, 'language': 'en', 'connection': {'use_ssl': True, 'verify_ssl_certs': True, 'use_proxy': False, 'timeout_secs': 5}, 'proxies': {'http': 'http://user:pass@host:port', 'https': 'socks5://user:pass@host:port'}}


    Ну а так можно сменить язык:
    from pyowm.owm import OWM
    from pyowm.utils.config import get_default_config
    config_dict = get_default_config()
    config_dict['language'] = 'ru'
    owm = OWM('d4bfb9a2a08c4fd186672544bb41491c', config_dict)

    PyOWM code recipes
    Ответ написан
    Комментировать
  • Как найти ключ по значению?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    Перебором.
    Ответ написан
    6 комментариев
  • Почему возникает ошибка при обращении к элементу массива?

    0xD34F
    @0xD34F
    Я новичок в python

    Это не оправдание. Судя по предыдущим вопросам, у вас минимум полтора года опыта использования js. Могли бы и научиться хоть чему-нибудь, за такой-то срок.

    if change_index <= len(alphabet):
      result_text += alphabet[change_index]

    С какого числа начинаются индексы у массивов? И, соответственно, каким числом (относительно длины) заканчиваются?
    Ответ написан
    1 комментарий
  • Можно ли импортировать библиотеку в python3 из переменной?

    fox_12
    @fox_12 Куратор тега Python
    Расставляю биты, управляю заряженными частицами
    Можно через importlib
    In [1]: import importlib
    
    In [2]: requests.__version__
    ---------------------------------------------------------------------------
    NameError                                 Traceback (most recent call last)
    <ipython-input-2-37d800a179a9> in <module>
    ----> 1 requests.__version__
    
    NameError: name 'requests' is not defined
    
    In [3]: requests = importlib.import_module('requests')
    
    In [4]: requests.__version__
    Out[4]: '2.22.0'
    Ответ написан
    Комментировать
  • Как установить модуль aiogram на synology?

    CityCat4
    @CityCat4
    Дома с переломом ноги
    Хочу подтвердить и немного дополнить ответ Алан Гибизов - не стоит пытаться собрать в synology ничего серьезного. Если чего-то нет в Entware/Optware - лучше забыть-понять-простить, чем пытаться сгородить потемкинскую деревню.
    Дело в том, что synology можно назвать линухом только по утиной типизации - в нем ядро линукс, в нем /etc и /bin - значит - это линукс.

    Нихренашеньки.

    Это нечто, похожее на линкус. Да, в него ставятся пакеты entware/optware. Да, в нем можно собрать несложный пакет типа nrpe или nagios-plugins. Но попробуйте-ка собрать в нем нечто глобальное - типа самбы - 9 из 10, что дело кончится принудительным форматированием винтов в другом компе и переустановкой DSM.

    Почему?

    Потому что synology не предназначена для задач, которые не решаются пакетами, устанавливаемыми через DSM. Установить питон например, нормальный питон, а не то жуткое уIOBище, что стоит по умолчанию, получилось только с третьего захода и то с помощью "пилы, топора и какой-то матери".

    Все установленные пакеты от synology тут поизрезаны по самое не хочу. Это относится и к sssd, и к samba и еще Бог знает к чему (что я не проверял). То, что в линухе решается с пол-пинка, например доменная аутентификация по группам в FTP-сервере - здесь выливается в нечто слоноподобное, которое просто роняет систему...

    Synology - это полка. Просто полка для хранения данных. Не надо тянуть ее на глобус :)
    Ответ написан
    2 комментария