Как писать и читать в файл в Python?
Вот как выглядит мой код:
restart = 'y'
while (True):
sentence = input("What is your sentence?: ")
sentence_split = sentence.split()
sentence2 = [0]
print(sentence)
for count, i in enumerate(sentence_split):
if sentence_split.count(i) < 2:
sentence2.append(max(sentence2) + 1)
else:
sentence2.append(sentence_split.index(i) +1)
sentence2.remove(0)
print(sentence2)
outfile = open("testing.txt", "wt")
outfile.write(sentence)
outfile.close()
print (outfile)
restart = input("would you like restart the programme y/n?").lower()
if (restart == "n"):
print ("programme terminated")
break
elif (restart == "y"):
pass
else:
print ("Please enter y or n")
Мне нужно знать, что делать, чтобы моя программа открыла файл, сохранила введенное предложение и числа, которые воссоздали предложение, а затем смогли распечатать файл. (Я предполагаю, что это часть для чтения). Как вы, вероятно, можете сказать, я ничего не знаю о чтении и записи в файлы, поэтому, пожалуйста, напишите свой ответ, чтобы новичок мог понять. Кроме того, одна часть кода, связанная с файлами, - это полный удар в темноте, взятый с разных сайтов, так что не думайте, что у меня есть знания по этому вопросу.
2 ответа
По сути, вы создаете объект файла, открывая его, а затем выполняете операцию чтения или записи.
Читать строку из файла
#open("filename","mode")
outfile = open("testing.txt", "r")
outfile.readline(sentence)
Читать все строки из файла
for line in fileobject:
print(line, end='')
Чтобы написать файл с использованием Python
outfile = open("testing.txt", "w")
outfile.write(sentence)
Проще говоря, чтобы прочитать файл в python, вам нужно "открыть" файл в режиме чтения:
f = open("testing.txt", "r")
Второй аргумент "r" означает, что мы открываем файл для чтения. После наличия файлового объекта "f" к содержимому файла можно получить доступ:
content = f.read()
Чтобы записать файл в python, вам необходимо "открыть" файл в режиме записи ("w") или в режиме добавления ("a"). Если вы выберете режим записи, старый контент в файле будет утерян. Если вы выберете режим добавления, новый контент будет записан в конце файла:
f = open("testing.txt", "w")
Чтобы записать строку s в этот файл, мы используем команду записи:
f.write(s)
В вашем случае это будет что-то вроде:
outfile = open("testing.txt", "a")
outfile.write(sentence)
outfile.close()
readfile = open("testing.txt", "r")
print (readfile.read())
readfile.close()
Я бы рекомендовал следовать официальной документации, на которую указывает cricket_007: https://docs.python.org/3/tutorial/inputoutput.html