Контакты

Достижения

Все достижения (1)

Наибольший вклад в теги

Все теги (25)

Лучшие ответы пользователя

Все ответы (27)
  • Почему дропается база Sqlite на heroku?

    @DollaR84
    На heroku нельзя использовать файлы, так как используется виртуальная файловая система, которая минимум раз в сутки перезапускается. Об этом они сразу предупреждают в описании. На heroku предоставляется база даже в случае бесплатного доступа для обучения, правда всего 5Мб вроде в пакете hobby-dev. Остальные варианты за деньги также можно. Если же вам нужно обязательно использовать файл sqlite - то тогда надо искать другой хостинг, heroku не подойдет.
    Ответ написан
  • Я не могу понять в чем проблема в моём коде?

    @DollaR84
    У вас неправильно написаны конструкторы классов.
    У всех классов методы:
    _init_
    надо заменить на:
    __init__
    Разница в том, что там по два символа подчеркивания и спереди слова и сзади.
    И у методов __lt__ и __gt__ тоже самое.
    У всех служебных методов не один символ подчеркивания спереди и сзади, а по два символа.
    Да, кстати, и метод __lt__ правильно писать с буквой "l", а не __it__.
    Короче, просто много синтаксических ошибок от невнимательности.
    Да и еще, метод __repr__ тоже пишется по два символа подчеркивания с двух сторон. И плюс код в этом методе нерабочий, с ошибками, но то уже другой вопрос, думаю там сами разберетесь по трейсбеку.
    Ответ написан
  • Pygame. Как сделать округлые углы у прямоугольника?

    @DollaR84
    можно ли рамки и заливку прямоугольника сделать разными цветами, если да, то как?

    Тут все просто, конструктор прямоугольника имеет вид:
    pygame.draw.rect(surface, color, (x1, y1, size_x, size_y), width)
    То, что вас интересует, кроется в последнем параметре width.
    Если он задан то рисуется рамка прямоугольника заданной ширины, если его не задать, то рисуется прямоугольник с заливкой.
    Например, чтобы нарисовать прямоугольник, у которого рамка и заливка будут разных цветов, надо нарисовать два прямоугольника:
    pygame.draw.rect(surface, color1, (x1, y1, size_x, size_y))
    pygame.draw.rect(surface, color2, (x1, y1, size_x, size_y), width)


    С закругленными углами сложнее.
    Думаю там нужна работа с масками.
    Ответ написан
  • Как правильно упаковать .py в .exe?

    @DollaR84
    Ну судя по ошибке - telebot не может найти файл сертификата SSL.
    Дело все в том, что при запуске exe, созданного pyinstaller, сначала все содержимое распаковывается во временную папку, а затем запускается из нее, соответственно путь другой.
    Поэтому что можно сделать в вашем случае:
    файл SSL добавить в упаковку pyinstaller, с помощью опции --add-data. Пример:
    pyinstaller -F --add-data ssl;. main.py
    Где:
    ssl - файл сертификата;
    . - точка означает текущий каталог, это если файл сертификата лежит в корне со скриптом.

    Затем в самом скрипте надо добавить следующий код:
    import os
    import sys
    def resource_path(relative_path):
        """ Get absolute path to resource, works for dev and for PyInstaller """
        if getattr(sys, 'frozen', False):
            base_path = sys._MEIPASS
        else:
            base_path = os.getcwd()
        return os.path.join(base_path, relative_path)

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