Форум сайта python.su
0
Хуй Dick
Отредактировано xeyalxx (Май 11, 2018 23:00:42)
Офлайн
253
а файл такой:
127561953:True 582514953:False 149535825:False 674938631:True
127561953 : True 582514953 : False 149535825 : False 674938631 : True
Отредактировано doza_and (Июль 10, 2017 23:55:17)
Офлайн
1
FILENAME = 'something.txt' data = open(FILENAME) parsed_data = {} for l in data: splitted = l.split(':') k = splitted[0].strip() v = True if splitted[1].strip() == 'True' else False parsed_data.update({k: v})

Отредактировано pcz (Июль 11, 2017 01:10:40)
Офлайн
0
Хуй Dick
Отредактировано xeyalxx (Май 11, 2018 22:56:52)
Офлайн
0
Dick хуй
Отредактировано xeyalxx (Май 11, 2018 22:57:07)
Офлайн
1
xeyalxxТа версия была с ошибкой
Спасибо, но не мог бы ты немного пояснить этот код?
Я исправил и вроде теперь код не выглядит магией, но всё таки напишу.Офлайн
253
xeyalxxЕсли вы сами его делаете, то как раз без пробелов больше мороки. С пробелами это валидный yaml формат и его можно считать так:
меньше мороки с лишними пробелами.
import yaml data = yaml.load(open("some.txt","r"))
Отредактировано doza_and (Июль 11, 2017 00:42:34)
Офлайн
1
doza_and
Если вы сами его делаете, то как раз без пробелов больше мороки. С пробелами это валидный yaml формат и его можно считать так:
import yaml
data = yaml.load(open(“some.txt”,“r”))
да и записать его проще.
Вообще “стандартные” форматы лучше по многим причинам.
Офлайн
857
Общий вариант обработки входных данных и перевода их в удобные данные
>>> import re >>> >>> text = """ ... 127561953:True ... 582514953:False ... 149535825:False ... 674938631:True ... """ >>> >>> pat = r'(\d+):(\S+)' >>> >>> out = re.findall(pat, text) >>> out [('127561953', 'True'), ('582514953', 'False'), ('149535825', 'False'), ('674938631', 'True')] >>> >>> dct = dict(out) >>> dct {'127561953': 'True', '674938631': 'True', '582514953': 'False', '149535825': 'False'} >>> >>> '127561953' in dct True >>> dct['127561953'] 'True' >>>
Отредактировано py.user.next (Июль 11, 2017 02:51:19)
Офлайн
0
Вы все тут пидорасы
Отредактировано xeyalxx (Май 11, 2018 22:57:31)
Офлайн