Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 1, 2011 00:03:17

Matt
От:
Зарегистрирован: 2011-07-31
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

загрузка отдельных значений

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



Отредактировано (Авг. 1, 2011 00:03:48)

Офлайн

#2 Авг. 1, 2011 01:24:27

Enchantner
От:
Зарегистрирован: 2009-02-11
Сообщения: 442
Репутация: +  0  -
Профиль   Отправить e-mail  

загрузка отдельных значений

Во-первых, что мешает сделать так? Хранишь в файле построчно логин:пароль через двоеточие, а грузишь примерно так:

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

Во-вторых, такие данные удобно хранить в стандартизированном формате, например, json. Тогда тебе надо будет просто записать данные в файл в виде словаря и загрузить в питон с помощью import json; json.loads(f.read())



Отредактировано (Авг. 1, 2011 01:25:23)

Офлайн

#3 Авг. 1, 2011 07:36:30

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  253  -
Профиль   Отправить e-mail  

загрузка отдельных значений

1 еще стандартное решение ConfigParser
2 порезать значения попарно не трудно

a=["login1", "pass1", "login2", "pass2"]
pairs=zip(a[::2],a[1::2])
3 порезать хвост еще проще
>>> "asdasd\n".strip()
'asdasd'
4 cPickle.load дает вполне доступные для редактирования данные, можно и его использовать



Отредактировано (Авг. 1, 2011 07:38:19)

Офлайн

#4 Авг. 1, 2011 11:03:05

Matt
От:
Зарегистрирован: 2011-07-31
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

загрузка отдельных значений

Спасибо большое! Благодарю!



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version