Найти - Пользователи
Полная версия: загрузка отдельных значений
Начало » Python для новичков » загрузка отдельных значений
1
Matt
Добрый день! Возникла большая проблема со стандартным open(file, mode). Я хочу реализовать загрузку логинов/паролей из файла. Однако, если записать все значения в строку, что-то вроде “login1”, “pass1”, “login2”, “pass2”, то питон загрузит всё как одно значение, т.е. так: .
Если же записать все значения с новой строки, питон загрузит их отдельно, однако к концу каждого значения добавит ‘\n’, что делает невозможным обратиться к ним как к index (ошибка: object cannot be interpreted as an index). Пожалуйста, помогите реализовать загрузку вроде . Благодарю.
Enchantner
Во-первых, что мешает сделать так? Хранишь в файле построчно логин:пароль через двоеточие, а грузишь примерно так:

with open('test.txt', 'r') as f:
a = [l.strip().split(':') for l in f.readlines()]
- получается словарь из пар: [, , …]

Во-вторых, такие данные удобно хранить в стандартизированном формате, например, json. Тогда тебе надо будет просто записать данные в файл в виде словаря и загрузить в питон с помощью import json; json.loads(f.read())
doza_and
1 еще стандартное решение ConfigParser
2 порезать значения попарно не трудно
a=["login1", "pass1", "login2", "pass2"]
pairs=zip(a[::2],a[1::2])
3 порезать хвост еще проще
>>> "asdasd\n".strip()
'asdasd'
4 cPickle.load дает вполне доступные для редактирования данные, можно и его использовать
Matt
Спасибо большое! Благодарю!
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB