• Как загрузить картинку в базу данных сайта с python?

    trapwalker
    @trapwalker
    Программист, энтузиаст
    Вы не предоставили достаточной информации для ответа.
    Не понятно какой библиотекой для работы с БД вы пользуетесь. Но в любой есть механизм работы с бинарными данными.
    И нет, в текстовый формат бинарные данные не требуется переводить. Это избыточно, медленно и неэкономично.
    Приведите код, которым вы вставляете какие-то другие данные в вашу таблицу, тогда будет понятнее в каком ключе вам подсказывать решение.
    загрузить изображение в базу данных сайта

    А если у вашего сайта уже есть API для загрузки и получения (отображения) изображений, то вам, скорее всего, вообще не придётся работать с БД, достаточно использовать API сайта через скрипт на питоне и изображение загрузится на сайт штатным способом, как это делается со стороны браущера.

    В общем мало подробностей для корректного обстоятельного ответа.
    Ответ написан
    Комментировать
  • Как решить проблему с selenium python?

    EreminD
    @EreminD
    Кое-что умею
    как я перестал париться из-за бинарников и полюбил WDM

    from selenium import webdriver
    from selenium.webdriver.firefox.service import Service as FirefoxService
    from webdriver_manager.firefox import GeckoDriverManager
    
    driver = webdriver.Firefox(service=FirefoxService(GeckoDriverManager().install()))
    Ответ написан
    1 комментарий
  • Какие книги для изучения Python вы порекомендуете?

    AlexNest
    @AlexNest Куратор тега Python
    Работаю с Python/Django
    Марк Лутц - изучаем Python. 5-е издание. (в двух томах).
    Однако я бы советовал в пару к нему взять что-то по алгоритмам (навскидку вспомню "Грокаем алгоритмы", в комментариях могут посоветовать лучше/еще), полагаю на ЕГЭ это будет полезно.
    Ответ написан
    3 комментария
  • Вылет Python при возврате c_char_p из dll ctypes. Что не так?

    Vindicar
    @Vindicar
    RTFM!
    У тебя возвращаемая переменная размещена на стеке. Возможно, string умирает по выходу из функции, и уносит с собой выделенную строку, так что указатель к моменту возврата из функции уже ни на что не указывает.

    Если обратиться к функции из под C++, она сработает?
    # include <fstream>
    # include <string>
    using namespace std;
    
    const char* readfile(char* filename) {
      ifstream file;
      string lines, line;
      
      file.open(filename);
      if (file.is_open()) {
        while (file >> line) {
          lines += line;
        }
        file.close();
        return lines.c_str();
      } else {
        char* trashVar = "Bad open";
        return trashVar;
      }
    }
    
    int main()
    {
        cout << readfile("filename.txt");
        return 0;
    }
    Ответ написан
    4 комментария
  • Почему не отрисовывается компонент в Blazor?

    vabka
    @vabka
    Токсичный шарпист
    Ну мы вам наслово верим, что код нормальный.
    Раз так, то значит остаётся единственный вариант:
    заряженная частица от солнца угодила в оперативку и перевернула какой-то бит, который отвечает за то, нужно ли этот компонент отрисовывать.

    Говорят "звёзды не так сошлись" - это как раз про такой случай.
    Попробуйте перезагрузить компьютер и попробовать ещё.

    Если после перезагрузки всё ещё не работает - значит вы либо катастрофически удачливый, либо всё-таки есть какая-то ошибка в коде и вы нам врёте по поводу "Разметка, код всё нормально"
    Ответ написан
    Комментировать
  • Почему не отрисовывается компонент в Blazor?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Потому что вы сделали вот там *тыкает пальцем в экран* не правильно, нужно было сделать вот так: *кусок кода*. Вот и всё, проблема решена
    Ответ написан
    Комментировать
  • PyCarm не видит интерпритатор Ubuntu, как исправить?

    GavriKos
    @GavriKos
    Так в WSL будут бинарники для линукс-подобных систем. А пайчарм запущен в винде и не умеет с ними работать.
    Ответ написан
    2 комментария
  • Как отправлять рандомные сообщения через telethon?

    drygdryg
    @drygdryg
    Python-разработчик
    Вынесите вызовы random.choice из модуля text в отдельную функцию, и перед отправкой каждый раз вызывайте эту функцию. Например:
    def generate_random_sentence():
        """Создаёт случайное предложение"""
        ky = ['text', 'text2']
        k = random.choice(ky)
    
        zax = ['text', 'text2', 'text3']
        z = random.choice(zax)
    
        magz = ['text', 'text2', 'text3', 'text4']
        m = random.choice(magz)
    
        return f"{k}. {z} в {m}"
    Ответ написан
    Комментировать
  • Как понять, к какому элементу мы обращаемся?

    shabelski89
    @shabelski89
    engineer
    коротки ответ, как отличить атрибут от метода, проверить его функцией callable (если вызываемый - True, то есть метод , иначе атрибут) пример ниже:
    >>> class Duck:
    ...     def __init__(self, color):
    ...         self.color = color
    ...     def get_color(self):
    ...         return self.color
    ...
    >>>
    >>>
    >>> d = Duck('orange')
    >>> d
    <__main__.Duck object at 0x000001F569CDEA08>
    >>> dir(d)
    ['__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'color', 'get_color']
    >>> callable(d.color)
    False
    >>> callable(d.get_color)
    True

    но скорее всего IDE и так подсвечивает
    63ea8c10ab2b5903826805.png

    вторая часть проще, нужно прочитать про public, protected, private например тут
    и как в примере выше с помощью dir() можно увидеть все атрибуты и методы.
    Ответ написан
    2 комментария
  • Какой python скрипт посоветуете для создания опроса на подобие google forms?

    fenrir1121
    @fenrir1121
    Начни с документации
    Берете любой веб фреймворк, Flask, FastApi, Tornado, Django. Реализуете всю логику, накидываете простую веб страничку, готово.
    Если с фронтом не дружите можете попробовать что-то вроде PyWebIO
    Ответ написан
    4 комментария
  • Пропадает интернет?

    hint000
    @hint000
    у админа три руки
    Начать с замены кабеля между ПК и роутером. Хреновый кабель (или хреново обжатые коннекторы на кабеле) вполне может быть причиной. Ещё можно в другой порт на роутере подключиться.
    Ответ написан
    1 комментарий
  • Дано натуральное число N. Определить количество ифр в цифровой записи данного числа,которые имеют наибольшее значение?

    Griboks
    @Griboks
    Нуу, поскольку вопрос про программирование, не будем придумывать всякие формулы, а тупо запишем условие:
    (_:=sorted(input())).count(_[-1]).

    >> 1808
    2
    Ответ написан
    Комментировать
  • Вопрос по оформлению кода C++?

    @dima20155
    you don't choose c++. It chooses you
    Я бы полистал уже готовые рекомендации по стилю. Из них можно подчеркнуть интересные вещи, которые могут сказаться даже на качестве самого ПО и потенциальных ошибках.
    Вот пример.
    https://google.github.io/styleguide/cppguide.html
    Ответ написан
    1 комментарий
  • В чем разница между параметрами и атрибутами классов?

    Vindicar
    @Vindicar
    RTFM!
    Параметры метода относятся только к самому методу. Остальной класс про них знает, но только в плане "что нужно передать этому методу при вызове". Как метод использует тот или иной параметр - это его дело.

    Атрибуты класса привязаны к экземпляру класса. По сути, у большинства объектов есть скрытый словарь __dict__, который хранит атрибуты этого объекта. Создание атрибута означает внесение записи в __dict__.

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

    При этом у __init__() есть полная свобода действий в плане того, откуда брать значения для атрибутов класса и какие атрибуты создавать. Пример:
    class Point:
        def __init__(self):
            self.x = 0
            self.y = 0
    
    point = Point()
    # у point есть два собственных атрибута, x и y
    print(point.__dict__)  # {'x': 0, 'y': 0}

    Здесь конструктор не принимает параметров, так как он использует константы для создания атрибутов.
    Он также мог бы брать значения атрибутов из собственных параметров, мог бы иметь параметры, которые не относятся к атрибутам, или всё сразу в любой комбинации.

    Пример параметров, не относящихся к атрибутам:
    class Point:
        def __init__(self, is_3d):
            self.x = 0
            self.y = 0
            if is_3d:  # этот параметр не используется как значение атрибута
                self.z = 0  # а этот атрибут может присутствовать или отсутствовать
    
    point_2d = Point(False)
    print(point_2d.__dict__)  # {'x': 0, 'y': 0}
    point_3d = Point(True)
    print(point_3d.__dict__)  # {'x': 0, 'y': 0, 'z': 0}

    Пример создания атрибута "на ходу":
    class Point:
        def __init__(self):
            self.x = 0
            self.y = 0
    
    point = Point()
    print(point.__dict__)  # {'x': 0, 'y': 0}
    point.name = 'Start'  #  создаём атрибут "на ходу"
    print(point.__dict__)  # {'x': 0, 'y': 0, 'name': 'Start'}


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

    @oneLEAM
    Вот вам маленький пример как подобное можно сделать:
    questions = [
        {'question': 'Кто из героев Киновселенной Marvel начал знакомство с Землёй, попав под грузовик?',
        'answers': ['Фил Колсон', 'Халк', 'Капитан Америка', 'Правильного ответа нет'],
        'right_answer': 4},
    
        {'question': 'Как звучит полное имя младшего брата Тора?',
        'answers': ['Локи Одинсон', 'Локи Эриксон', 'Локи Лафейсон', 'Правильного ответа нет']
        'right_answer': 3},
    
        {'question': 'Какой суперзлодей отличился тем, что за очень короткое время собрал в ангаре сотни управляемых дронов для армии США?',
        'answers': ['Иван Ванко', 'Альтрон', 'Танос', 'Правильного ответа нет'],
        'right_answer': 1}
    ]
    
    for i in questions:
        print(i["question"])
        print(*i["answers"])
        if int(input("введите номер вашего ответа: ")) == i['right_answer']:
            print("Ура победа!")
        elif int(input("попробуйте еще раз:")) == i['right_answer']:
            print("Уже лучше!")
        else:
            print("в другой раз повезет!")

    Как встроить в телеграмм додумайся сам.
    Ответ написан
    2 комментария
  • Что делать, если не можешь понять?

    @12rbah
    Что делать, если не можешь понять или запомнить в программировании что-то новое. К примеру пытаешься понять, а результата 0.
    Спросить конкретно что непонятно и повторять до тех пор пока не получиться понять, а не задавать абстрактные вопросы. Ну и важно помнить о целесообразности, условно если вы залезли в исходники линукса и там ничего не понятно, поковырялись два дня и ничего не поняли, то стоит подумать нужно но ли оно вам, если нужно то тогда нужно начать с изучения более простых вещей. А так это нормальная практика по началу, когда читаешь что-то и даже с 10 раза не понимаешь, можно день/два отдохнуть от этой темы и заниматься другими вещами, а потом вернуться.
    P.S. Так а что конкретно непонятно?
    Ответ написан
    Комментировать
  • Можно ли бесконечное число планет выпрямить в бесконечную плоскость?

    По-детски упростив, вроде бы, просто представить:
    в бесконечной Вселенной уже есть некая бесконечная плоскость.

    Все планеты этой Вселенной пусть отбрасывают "тень" точно перпендикулярно на эту плоскость.
    Задача сводится к вопросу: останутся ли на плоскости места без тени?

    Т.к. Вселенная-из-задачи бесконечна во все стороны, то и в направелнии перпендикуляра к плоскости тоже.
    На любую точку плоскости приходится бесконечная в обе стороны прямая, из любой точки которой на плоскость упадёт тень.

    Есть ли шанс что на бесконечной прямой не встретится ни одной планеты?
    Если таки не встретится – можно позаимствовать из другой "прямой", где планет «избыток»: более одной.

    Только не просите составить алгоритм «задачи про упаковку» на бесконечном пространстве )
    Ответ написан
    Комментировать
  • Можно ли бесконечное число планет выпрямить в бесконечную плоскость?

    wataru
    @wataru Куратор тега Математика
    Разработчик на С++, экс-олимпиадник.
    Да.

    Количество планет - счетное (Можно по спирали их все занумеровать).
    Каждая планета в форме блина - континуум ("количество" точек в плоскости или в круге, или на отрезке).

    Счетное количество континуумов - тоже котнинуум по мощности.
    Плоскость - тоже континуум.

    С точки зрения теории множеств - плоскость и поверхности всех планет равномощны.
    Ответ написан
    5 комментариев
  • Почему функция не возвращает значения?

    @oneLEAM
    Предлагаю вам убрать декоратор перед def calc и положите эту функцию куда нибудь повыше.
    А там где вы просите ввести мат. действие вместо того что у вас стоит поставьте это:
    bot.register_next_step_handler('Введите любой пример или математическое действие',  calc)

    Вроде должно работать
    Ответ написан
    1 комментарий