Автор | Сообщение |
|
Отправлено: 09.02.21 11:05. Заголовок: N 24 Задача 146
s = open('24-j8.txt').read() count = 1 maxcount = 0 for i in range (0,len(s)-1): a = s[ i] b = s[ i+1] c = int(a)+int(b) if c>=10: count+=1 if count >= maxcount: maxcount = count else: count = 1 print(maxcount)] Вот мой код. Когда создаю свой текстовый файл с цифрами, программа работает и выдает правильный результат. Однако с файлом 24-j8.txt выходит ошибка : c = int(a)+int(b) ValueError: invalid literal for int() with base 10: '\n' Возможно, я неправильно преобразовываю символ из строки в тип int... Но ведь с моим файлом программа работает нормально. В чем может быть причина?
|
|
|
Ответов - 1
[только новые]
|
|
|
| Администратор
|
Сообщение: 2408
|
|
Отправлено: 09.02.21 11:25. Заголовок: Andreyka009 пишет: V..
Andreyka009 пишет: цитата: | ValueError: invalid literal for int() with base 10: '\n' |
|
В конце файла стоит символ перевода строки '\n', который нельзя преобразовать в целое число. Его нужно обрезать, вызвав метод strip(): s = open('24-j8.txt').read().strip()
|
|
|