как писать элементы в строке на новой строке - PullRequest
0 голосов
/ 27 марта 2020

Я очень новичок в python, поэтому, пожалуйста, потерпите меня, пока я пытаюсь объяснить мою проблему:)

Даны инструкции:

  1. для каждого элемента в " list », запишите этот элемент в новой строке в конец файла, указанного в« filename ».
  2. list = [this, is, a, sentence]
  3. def newlines (filename, list):

I Мы нашли в сети код, который работает, но он включает f.seek (0), и мы не научились использовать поиск или помещать число в (). Мне было просто интересно, есть ли другой «более простой» способ написать это.

Заранее спасибо!

Ответы [ 3 ]

2 голосов
/ 27 марта 2020

Я не уверен, что это то, что вы хотите. Но позвольте мне поставить мой ответ здесь, чтобы вы проверили.

def newlines(l):
    f = open("newfile.txt", "w+")
    for i in l:
        f.write(i+"\n")
    f.close()

ls = ["this", "is", "a", "sentence"]
newlines(ls)

Создает новый файл, если он не существует, и записывает содержимое списка построчно.

Надеюсь, это поможет!

0 голосов
/ 27 марта 2020

Вот мой ответ. Вы можете попробовать это и изменить свой код соответственно.

def newlines(filename,list):
f=open(filename+".txt","w+")
for i in list:
    f.write(i+"\n")
f.close()

ls = [this, is, a, sentence]
newlines("test",ls)
0 голосов
/ 27 марта 2020
with open('filename.txt', 'w') as f:
    for item in l:
        f.write(item+'\n')

Если это единственный список, который вы хотите записать в файл, используйте опцию 'w'. В противном случае вы можете использовать опцию append 'a' для добавления строк в конец файла.

На основе комментария @Jon Clements вы можете заменить значение для l oop следующим образом:

with open('filename.txt', 'w') as f:
    print(*the_list, sep='\n', file=f)
...