@kirill_grosul

Из-за чего происходит ошибка?

Есть код:
input1 = open("input.txt")
output = open('output.txt', 'w')
A = set(input1.readline().split())
B = set(input1.readline().split())
s = len(A-B)
output.write(s)
output.close()

При его исполнении выдает ошибку
TypeError: expected a character buffer object
в строчке output.write(s). Почему и как это исправить?
  • Вопрос задан
  • 5691 просмотр
Решения вопроса 2
NetBear
@NetBear
Из-за того, что len() возвращает int, а Вам нужен str, т.к. метод write() умеет работать только с последним.
Замените предпоследнюю строчку на:
output.write(str(s))
Ответ написан
Комментировать
@mayorovp
Метод write записывает только строки. Либо явно преобразуйте результат в строку - либо используйте print

На втором Питоне:
print >> output, len(A-B)

На третьем Питоне:
print(len(A-B), file=output)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы