Форум сайта python.su
Ошибка записи в файл преобразования чисел в строки
Python 2.6 винда
по примеру из книги Лутца 3 издание
X, Y, Z = 43, 44, 45
S = 'Spam'
D = {'a': 1, 'b': 2}
L = [1, 2, 3]
F = open('datafile.txt', 'w')
F.write(S + '\n')
F.write('%s, %s, %s\n' % (X, Y, Z))
F.write(str(L) +'$' + str(D) +'\n')
F.close()
butes = open('datafile.txt').read()
print butes
F = open('datafile.txt')
line = F.readline()
line.rstrip()
print line
line = F.readline()
print line
parts = line.split(' , ')
int(parts[1]) # тут я пытаюсь преобразовать строку из списка parts в целое число "Ошибка синтаксиса "
File "C:\Documents and Settings\Admin\Рабочий стол\Untitled.py", line 19, in <module>
int(parts[1])
IndexError: list index out of range
Отредактировано (Март 8, 2010 16:22:07)
Офлайн
>> line.split(' , ')
я полагаю, что пробел перед запятой лишний.
Офлайн
Сравни, как ты записываешь и как читаешь, это простая невнимательность.
Офлайн
ZubchickА я бы ещё перестраховался
>> line.split(' , ')
я полагаю, что пробел перед запятой лишний.
parts = [w.strip() for w in line.split(',')]
Офлайн
knkdДля этих случаев придуман модуль csv ;)
Пользователь это такой неприятный зверёк который обязательно влезет в файл и изменит количество пробелов :)
Офлайн
igor.kaistНе наш метод :)
Для этих случаев придуман модуль csv
Офлайн
спасибо сам бы не нашел буду приучатся к внимательности
Офлайн
и еще к читательности ошибок, там про преобразование числа ничего нет
Офлайн