• По какой причине может идти закачка на Яндекс Диск по RESTAPI со скоростью 1мбит?

    Советую прочитать правила. Конкретно 5.17:

    5. Категорически запрещается размещать на страницах Сервиса:
    ...
    5.17. Жалобы, сообщения об ошибках и проблемах в работе электронных ресурсов. В подавляющем большинстве случаев, инициирование публичных обсуждений такого рода влечёт за собой высказывание предположений, слухов и заблуждений. Это вынуждает сотрудников обсуждаемых электронных ресурсов тратить время на отслеживание и комментирование таких дискуссий. Более того, может возникнуть ситуация, при которой представители электронного ресурса знают объективную причину, по которой то или иное решение не может быть реализовано, но не имеют права предоставить объяснение пользователям, поскольку это приведет к нарушению их обязательств по сохранению коммерческой тайны. Чтобы не провоцировать возникновение таких противоречивых ситуаций, следует использовать для сообщения об ошибках и проблемах в работе электронных ресурсов обращения в службу поддержки.

    С подобными вопросами вам стоит обратиться к:
    а) Хостеру
    б) Тех.поддержке ЯДиска.
  • Я хочу написать команду JSON python, но я встречаюсь с ошибкой. Как это исправить?

    AlexNest
    @AlexNest Куратор тега Python
    DF0rig,
    В целом да, верно. Но при таком подходе будет сохраняться только крайний записанный словарь. В данном случае, как минимум нужно добавлять значение не к пустому списку, а к результату записи .load(f)
    users_list = json.load(f)
    users_list.append(data)

    В целом, если писать в отрыве от реальной задачи я бы написал так:
    spoiler
    import json
    import os
    def load_data():
    	with open('data.json', 'r',encoding='UTF-8') as file:
    		if len(file.readlines()) != 0:
    			file.seek(0) # Нужно для возвращения "каретки" в начало файла, после проверки на не пустоту. 
    			data = json.load(file)
    			return data
    		else:
    			return []
    
    def dump_data(data=None):
    	
    	with open('data.json','w',encoding='UTF-8') as file:
    		if data:
    			json.dump(data, file, indent=4, ensure_ascii=False)
    		else:
    			pass
    
    
    def main():
    	if not os.path.isfile('data.json'): dump_data()
    	while True:
    		data = load_data()
    		for user in data:
    			print(user)
    
    		user_nickname = input('Никнейм: ')
    		passowrd = input('пароль: ')
    		position = input('позиция: ')
    
    		user_dict = {
    			'user' : user_nickname,
    			'pass' : passowrd,
    			'pos' : position,
    		}
    		data.append(user_dict)
    
    		dump_data(data)
    
    if __name__ == '__main__':
    	main()

    Хотя, в общем случае, если нужно постоянно читать-записывать данные, то стоит задуматься о использовании БД.
  • Я хочу написать команду JSON python, но я встречаюсь с ошибкой. Как это исправить?

    AlexNest
    @AlexNest Куратор тега Python
    DF0rig, при чем тут объединение словарей?
    Как я уже сказал выше - для множества элементов вам нужен список из словарей.
    Порядок следующий:
    1. Прочитать содержимое файла и преобразовать в список словарей с помощью json.load.
    2. Сформировать новый словарь из данных по шаблону.
    3. Добавить словарь в список из п.1.
    4. Записать полученный список обратно в json-файл json.dump.
  • Я хочу написать команду JSON python, но я встречаюсь с ошибкой. Как это исправить?

    AlexNest
    @AlexNest Куратор тега Python
    DF0rig, зависит от того, что вам нужно.
    Если вам нужно хранить данные одного пользователя, то переменная data должна быть словарем:
    data = {
        "name": user_nickname,
        "password": rpass,
        "position": normal_position
        }

    Тогда к значениям можно будет обращаться напрямую. Так, как делали вы:
    data["name"] = str_user_nickname
    data["password"] = rpass
    data["position"] = normal_position

    Если нужно данные нескольких пользователей, то нужно использовать список:
    data = [
        {"name": user_nickname,
        "password": rpass,
        "position": normal_position
        },
        {"name": user_nickname1,
        "password": rpass1,
        "position": normal_position1
        },
        {"name": user_nickname2,
        "password": rpass2,
        "position": normal_position2
        },
      ]

    Тогда, чтобы получить данные из каждого словаря, нужно пройтись по data циклом, либо получив значение по индексу. В "структурах данных" по ссылке из ответа есть примеры того, как можно это делать.
    Важно! user_nickname/rpass/прочие обозначения из кода должны быть либо именами объявленных ранее переменных, либо конкретными значениями.
  • Нужно сделать нумерацию Рейтинга игроков в боте я новичок в этом деле, поможете?

    AlexNest
    @AlexNest Куратор тега Python
    У вас что-то конкретно не получается или вам нужен готовый код/алгоритм?
    Увы, но то тогда ваш вопрос является заданием.
    Единственный верный совет на текущий момент - не пытайтесь прыгнуть выше головы а изучайте python последовательно. Хотя-бы вот по этому. В идеале, впрочем, почитайте приведенную там литературу (разве что у Лутца уже есть 5-е издание), для понимания принципов работы с языком.
  • Где я поймал invalid syntax?

    AlexNest
    @AlexNest Куратор тега Python
    1.Оформите код советующим тегом (правило 3.8).
    2.Приведите полный текст ошибки.
  • Как при выполнении условия(If) запустить отдельный готовый скрипт?

    AlexNest
    @AlexNest Куратор тега Python
    slymee, с помощью ключевого слова import.
    А если серьезно - почему бы, если вы только начли учить, не почитать какой-нибудь учебник?
    Ну или, если на учебник нет времени, то почему бы не загулить пункты?
    Пример: python импорт функции из другого файла
  • Как сделать вывод имени с SQL | Aiogram?

    AlexNest
    @AlexNest Куратор тега Python
    Alexndrev,
    В таком случае - это комплексная проблема, требующая, по-факту реализации схемы снуля.
    Прежде всего, нужно идентифицировать пользователя исключительно по неизменяемым данным, т.е. по его telegram-id (либо его id внутри группы, как в дискорде. Честно говоря, с ТГ я почти не работал, поэтому не могу сказать, как здесь это реализовано). В целом, вы делали шаги в эту сторону, однако есть несколько "но":
    • Поле id должно быть уникальным. В доках sqlite есть пример как сделать поле таковым. Добавить одного и того-же пользователя два раза уже не получится.
    • Создавать запись о юзере при его первом добавлении в группу. Тут два варианта - предварительно проверять, есть ли соответсвующие данние и если да, то ничего не делать. Альтернативным вариантом будет обработка исключений (напомню, id - уникален и при попытке повторно добавить идентичное значение, драйвер sqlite выдаст ошибку).
    • То, как вы обновляете - неверно и крайне затратно по ресурсам. Обновлять значения можно одним запросом:
    UPDATE users SET rep = rep * 2 WHERE id = 4 -- rep = rep * 2 здесь можно производить любые базовые мат.действия (сложение, вычитание, умножение и деление).

    Ники можно хранить как в базе, так и получать из ТГ на основе id

    Ну и как дополнение - нормализация баз данных. К сабжу отношения не имеет, но в целом полезная вещь.
  • Как сделать вывод имени с SQL | Aiogram?

    AlexNest
    @AlexNest Куратор тега Python
    Alexndrev, ну и? Скрины это хорошо, но без кода, результатом выполнения которого являются эти скрины и описания того что так/не так, не очень понятно, чего вы ожидаете.
    Тем ни менее:
    На первом скрине видно, что вы пытаетесь вы печатаете cursor.execute() или какой-то другой его метод. В общем случае, когда вы выполняете запрос-выборку, по нему можно итерироваться, как и по итераторам/генераторам, но как и в случае с последними - напрямую получить данные из него нельзя. Нужно вызывать метод .fetchall()/.fetchone() Как в примере.
    По второму скрину - вообще ничего конкретного сказать нельзя. Ну, есть список экспертов, он выводится.
    Возможно, проблема в том, что у всех экспертов одинаковое имя. Тогда проблема в том, какие ограничения установлены на уровне базы для отсеивания дублирующихся имен (скажу сразу - из нет) и в том, каким способом вы проверяете при добавлении/обновлении значений, есть ли уже юзер с таким именем в базе (опять же, в приведенном коде таких проверок нет).
  • Как сделать вывод имени с SQL | Aiogram?

    AlexNest
    @AlexNest Куратор тега Python
    Alexndrev, в таком случае проверьте - насколько правильно вы формируете запрос.
    В примере создал точно-такую-же как у вас таблицу и запрос, но с именем:
    пример
    import sqlite3
    with sqlite3.connect('db.sqlite3') as conn:
    	conn.execute("CREATE TABLE IF NOT EXISTS users(name TEXT, id INT, rep INT)")
    	conn.execute("INSERT INTO users VALUES('username0',1,2323)")
    	conn.execute("INSERT INTO users VALUES('username1',2,324)")
    	conn.execute("INSERT INTO users VALUES('username2',3,23443)")
    	conn.execute("INSERT INTO users VALUES('username3',4,43521)")
    	conn.commit()
    	cur = conn.cursor()
    	result = cur.execute("SELECT id, name, rep FROM users ORDER BY rep DESC LIMIT 10").fetchall()
    	result1 = cur.execute("SELECT * FROM users ORDER BY rep DESC LIMIT 10").fetchall()
    	cur.close()
    	print(result)
    	print(result1)

    Все работает отлично:
    [(4, 'username3', 43521), (3, 'username2', 23443), (1, 'username0', 2323), (2, 'username1', 324)]
    [('username3', 4, 43521), ('username2', 3, 23443), ('username0', 1, 2323), ('username1', 2, 324)]

    И да, как видите можно выбирать все значения с помощью *
  • Как мне это реализовать?

    Как мне это реализовать?

    Открою секрет, но путем разработки алгоритма написания соответствующего кода:
    • Задача преобразуется в набор минимально-возможных и максимально-четких подзадач.
    • На основе подздач из п.1 реализуются алгоритмы.
    • На основе алгоритмов пишется код.
  • Не могу найти драйвера для ноутбука?

    Не могу найти драйвера для ноутбука?

    Да, не можете. Это констатация факта, не вопрос. Обратите внимание на п.3.1 правил и в дальнейшем - задавайте вопросы более корректно.
    По сабжу:
    вариант 1: google -> toshiba satellite l655 1h7 драйвера
    вариант 2: Открываете диспетчер устройств -> смотрите название модулей -> находите в том-же гугле
    Ну и не забывайте, что 7-ка может автоматически ставить большую часть дров (кроме видяхи и специфических устройств).
  • Как получить JSON у отдельного поста?

    alapys,
    Из шаблона сделать запрос с помощью xmlhttprequest или fetch на указанный url после чего как-то обработаь.
    С другой стороны - я не очень понимаю, зачем получать json, если вы уже получили данные из представления.
  • Как получить JSON у отдельного поста?

    alapys,
    я думал, что нужно создать еще одну например отдельную страницу, /api/json-post на которую будет выводится данные о посте в формате json.

    Ну, конкретно для конкретного поста, если не подразумевается, например, приложение для мобилок, делать json излишне.
  • Как получить JSON у отдельного поста?

    alapys,
    одновременно переход на шаблон и запись json

    Запись json куда а главное зачем? Json обычно используют просто как удобный и структурированный способ передачи данных между одним кодом и другим. Например, для "бесконечной" погрузки контента (при пролистывании до определенного блока запускается JS-скрипт, посылающий запрос к серверу и получающий json с данными, который потом преобразуется в html разметку опять же силами js). Поэтому, по крайней мере для клиент-серверной системы вроде сайта понятие "запись json" нужно раскрывать чуть более подробно.
    получать pk и по нему строить json запрос на другой странице(/api/json-post)

    Тут тоже не очень понятно как трактовать:
    1.Нужно открывать новую вкладку/перейти на другую страницу, содержащую json?
    window.open('http://example.com');
    2. Динамически обновлять контент (о чем я уже писал выше и о чем подумал изначально)?
    Используйте js: xmlhttprequest/fetch/ajax.
    3.Выполнять какую-то логику (отправлять запрос к другому серверу/в мессенжер или что-то еще.)
    Тут сложно дать какой-то однозначный ответ - для запросов на python используют, в основном, requests. В остальном - нужно более четко формулировать задачу.
  • Как сделать базу данных?

    AlexNest
    @AlexNest Куратор тега Python
    Ну оно и логично. В приведенном вами коде нет ни запроса, который проверяет на основе данных юзера, есть ли запись в базе, ни запроса, который эти же данные вставляет. Вместо этого - есть какие-то заглушки:
    result = await cur.execute("SELECT * FROM profile WHERE uid")
    await cur.execute('INSERT INTO profile(uid) VALUES (uid)')

    Как правильно вставлять данные смотрите в документации по библиотеке.
    Вот пример для sqlite
  • Как сделать базу данных?

    AlexNest
    @AlexNest Куратор тега Python
    Artem4442, ну да. Здесь то вы юзера не указали:
    async def on_message_new(self, message):<br>
            user = await self.bot.get_user(message.from_id)<br>
            reg = await basa.register.main.register()