Как производить запись каждой строки в отдельную переменную?
Возникла проблема с записью данных из файла формата .txt, я получаю данные из файла в зашифрованном виде, далее их расшифровываю и они вывожу.
Я хочу сделать так, что бы каждая строка в файле была четка предназначена к переменной, но как это сделать не знаю.
Иными словами пятая строчка в файле предназначена только к переменой line5и ни как иначе.
Код проблемного места:
...
with open(directory_file, "r") as f:
lines = f.readlines()
for line in lines:
decrypted = rsa.decrypt(base64.b64decode(line.strip()), key_priv)
print(decrypted.decode('utf8'))
...
Всего в файле будет 28 строчек.
Полный код программы:
main.py: https://drive.google.com/file/d/1qTCQJD5hQjarttH6UlMuCQDn0M-uudeL/view?usp=sharing
crypto.py: https://drive.google.com/file/d/1WOF20K3ulmFt0HorWf0Nj8CADTzUAX3l/view?usp=sharing
Ответы (2 шт):
Если развить тему словаря, то можно глянуть в сторону Python – базы данных NoSQL Данные хранятся в виде словаря.
...
class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow):
def __init__(self):
super().__init__()
self.setupUi(self)
self.answers = [] # +++
...
def app_key_task(self):
...
with open(directory_file, "r") as f:
lines = f.readlines()
for line in lines:
decrypted = rsa.decrypt(base64.b64decode(line.strip()), key_priv)
print(decrypted.decode('utf8'))
self.answers.append(decrypted.decode('utf8')) # +++
print(f'\n -=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-')
print(self.answers) # +++
print(f' -=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- \n')
def func_generate_keys(self):
...
В список self.answers мы записали какие-то ответы:
self.answers[0] - это первая строка;
self.answers[1] - это вторая строка;
self.answers[2] - это третья строка;
self.answers[3] - это четвертая строка;
self.answers[4] - это пятая строка (в ваших пояснениях это line5);
...
Обращение к элементам списка:
Для обращения к элементам списка надо использовать индексы,
которые представляют номер элемента в списка.
Индексы начинаются с нуля.
То есть первый элемент будет иметь индекс 0,
второй элемент - индекс 1 и так далее.