Многие псевдокодеры сохраняют важные данные посредством записи их в переменные(убейтесь) или через .txt-files(facepalm), думаешь я рофлю? А нихуя, есть один кодер с этого любимого портала который вместо баз данных использует .txt-files указывать его не буду, но я надеюсь ты это прочтешь и научишься чему-то. Поехали. В первую очередь нам необходимо подключить "PyMySQL", если ты юзаешь стоковый софт от Python используй pip, если ты юзаешь PyCharm, во первых, ты красава, во вторых, добавляй через Python Interpreter. Далее тебе нужно скачать Denwer в любом случае на пк у тебя хост или на сервере, редактировать ты один хуй будешь через комп все, а если ты делаешь это через сервер то земля металлом. Denwer це шо Денвер (Denwer) – это программа используемая web-разработчиками для разработки или создания сайтов на домашнем (локальном) компьютере без наличия интернета. Далее тебе нужно создать базу данных, если ты дурачок который делает эту хуйню впервые то заюзай это: CREATE TABLE `users` ( `id` int(11) NOT NULL AUTO_INCREMENT, `email` varchar(255) COLLATE utf8_bin NOT NULL, `password` varchar(255) COLLATE utf8_bin NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1 ; Code CREATE TABLE `users` ( `id` int(11) NOT NULL AUTO_INCREMENT, `email` varchar(255) COLLATE utf8_bin NOT NULL, `password` varchar(255) COLLATE utf8_bin NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1 ; В phpMyAdmin добавь базу данных, назовем ее test, можешь назвать по своему, но не будь ебланом, чтобы потом не скопипастить в тупую мой код и ебаться с кучей ошибок. Создал БД? Хорош, выбирай вкладку SQL и вставляй код выше, я не собираюсь тебе разжевывать что тут за что отвечает, для этого ты можешь воспользоваться pornhub.c google.com(MACLO не бань це не реклама спс). Далее открываем свой проект, и ебашим следующее: Импортируем модуль: import pymysql Code import pymysql Далее создаем необходимые данные для подключения: BD_HOST = "localhost" # ХОСТ BD_LOGIN = "root" # ЛОГИН BD_PASS = "" # ПАРОЛЬ BD_BASE = "test" # БАЗА ДАННЫХ BASE_USERS = "users" # ТАБЛИЦА С АККАУНТАМИ bd_connect = pymysql.connect(BD_HOST, BD_LOGIN, BD_PASS, BD_BASE) # ПОДКЛЮЧАЕМСЯ К БАЗЕ ДАННЫХ Code BD_HOST = "localhost" # ХОСТ BD_LOGIN = "root" # ЛОГИН BD_PASS = "" # ПАРОЛЬ BD_BASE = "test" # БАЗА ДАННЫХ BASE_USERS = "users" # ТАБЛИЦА С АККАУНТАМИ bd_connect = pymysql.connect(BD_HOST, BD_LOGIN, BD_PASS, BD_BASE) # ПОДКЛЮЧАЕМСЯ К БАЗЕ ДАННЫХ Теперь можно проверить все ли у нас работает с помощью этого волшебного кода: with bd_connect: cursor = bd_connect.cursor() cursor.execute("SELECT VERSION()") version = cursor.fetchone() print("Database version: {}".format(version[0])) Code with bd_connect: cursor = bd_connect.cursor() cursor.execute("SELECT VERSION()") version = cursor.fetchone() print("Database version: {}".format(version[0])) cursor = bd_connect.cursor() Code cursor = bd_connect.cursor() Из ID подключения bd_connect создается курсор для работы с Базой. cursor.execute("SELECT VERSION()") Code cursor.execute("SELECT VERSION()") execute используется для отправки SQL-запросов в нашу БД через курсор. cursor.fetchone() Code cursor.fetchone() Вызывает результаты из нашего запросы и записывает в переменную version. Таким образом мы можем сделать так: with bd_connect: cursor = bd_connect.cursor() bd_connect.execute(f"SELECT * FROM {BASE_USERS}") rows = cursor.fetchall() for row in rows: print("{0} {1} {2}".format(row[0], row[1], row[2])) Code with bd_connect: cursor = bd_connect.cursor() bd_connect.execute(f"SELECT * FROM {BASE_USERS}") rows = cursor.fetchall() for row in rows: print("{0} {1} {2}".format(row[0], row[1], row[2])) Таким образом мы выведем все то, что имеется в нашей БД SELECT * FROM {BASE_USERS} Code SELECT * FROM {BASE_USERS} SQL запрос с помощью которого мы просим БД выдать нам все значения из указанной таблицы в нашем случае это users. Таким же образом мы можем создать там запись: with bd_connect: sql = f"INSERT INTO `{BASE_USERS}` (`email`, `password`) VALUES (%s, %s)" cursor.execute(sql, ('нахуйиди@mail.ru', 'qwerty')) bd_connect.commit() Code with bd_connect: sql = f"INSERT INTO `{BASE_USERS}` (`email`, `password`) VALUES (%s, %s)" cursor.execute(sql, ('нахуйиди@mail.ru', 'qwerty')) bd_connect.commit() Я надеюсь я не зря писал эту хуйню и ты познал что-то новое для себя.
Понятно только тем, кто имеет опыт, сухие строки (вырезки) кода без описаний. Так что твои труды зря, можешь переписывать для чайников с описание каждого запроса, хоть и это не изменит их любви к txt (изменит только то, когда они заметят разницу быстродействия между работой с БД и txt доком). Кстати, БД может быть и локальной, для этого тогда Денвер не нужен и тогда можно обычный БД вивер скачать какой-нибудь для редактирования .sql файла.