#python
Вопрос:
у меня возникли проблемы с тем, чтобы понять, как заставить этот код писать файл. я использую python 3.8
text = open("readfilein6.txt", "r")
d = dict()
for line in text:
line = line.strip()
line = line.lower()
words = line.split(" ")
for word in words:
if word in d:
d[word] = d[word] 1
else:
d[word] = 1
for key in list(d.keys()):
print(key, d[key])
это моя неудачная попытка написать файл
file1= ("outputini6.txt")
with open(file1, "w") as file_object:
file_object.write(key, d[key])
я получаю это сообщение об ошибке:
file_object.write(key, d[key])
TypeError: write() takes exactly one argument (2 given)
он печатает именно то, что мне нужно, но он также нужен мне для записи файла
Комментарии:
1. пробовать
file.write(string)
2. Пожалуйста, всегда добавляйте полное сообщение об ошибке, если оно у вас есть, в свой вопрос или, если ваш код не выполняет то, что вы ожидаете, публикуйте ожидаемые и фактические результаты. Вы говорите, что ваша попытка написать провалилась, но не описываете, как она провалилась. Кроме того, используйте тег Python для большинства вопросов. 585 человек следят за вопросами с тегом Python-3,8 против 1,3 млн для Python
3. В сообщении об ошибке говорится, в чем именно заключается проблема. Ваша строка кода
file_object.write(key, d[key])
неверна, потомуwrite
что метод принимает один параметр, а не два. Вы могли бы написатьkey
иd[key]
с двумя звонкамиwrite
.
Ответ №1:
Ты действительно был очень близок:
text = open("readfilein6.txt", "r")
d = dict()
for line in text:
line = line.strip()
line = line.lower()
words = line.split(" ")
for word in words:
if word in d:
d[word] = d[word] 1
else:
d[word] = 1
file1 = "outputini6.txt"
with open(file1, "w") as file_object:
for key in list(d.keys()):
print(key, d[key])
file_object.write(f"{key} {d[key]}n")
То, что я изменил, — это запись, поэтому для ввода как ключа, так и значения. я также вызвал запись перед циклом, чтобы не перегружать сохраненные данные и не записывать все одновременно.
Комментарии:
1. Это действительно помогло, спасибо!
2. Это то, что вы намерены сделать? нужна дополнительная помощь?