Python有各种方法来创建、读取、写入、更新和删除文件。此外,Python允许用户处理文件,即读取和写入文件,以及其他许多文件处理选项来操作文件。让我们看看如何在Python中以不同的方案逐行写一个文件。
Python写到文件。
要在Python中写一个文件,使用**open()函数并添加一个参数"a "或"w"。要在文件的末尾追加内容,使用"a "参数。要覆盖文件中的任何现有内容,使用"w "**参数。open()是一个内置的Python文件处理函数,可以打开文件并将其作为一个文件对象返回。
f = open("app.txt", "a")
f.write("File is updated with appended content!")
f.close()
#open and read the file after the appending:
f = open("app.txt", "r")
print(f.read())
输出
11 12File is updated with appended content!
在这个例子中,你可以看到,输出以11 12开始。所以这意味着11和12已经在文件中存在了,它只是附加了,"文件以附加的内容被更新了!"。
Python 写一行到文件。
要在Python中写一行到一个文件,使用with open()函数。with 语句可以帮助你关闭文件,而不用明确地关闭它。这是向文件写入一行的正确方法。with 语句被用来用上下文管理器定义的方法来包装一个块的执行。
在写以文本模式(默认)打开的文件时,不要使用os.linesep() 函数作为行结束符;在所有平台上使用单个**"\n "**代替。
例子
如果文件不存在,open()函数将创建一个新文件。如果文件存在并且你想添加新的内容,那么在创建文件时,使用**"a "**模式。
使用**"w "**来写入截断的内容。
with open('data.txt', 'a') as f:
f.write('Welcome Playstation 5\n')
输出
它将创建一个名为data.txt的新文件,内容如下。
Welcome Playstation 5
另外,你也可以使用print()函数来代替write()函数。
with open('data.txt', 'a') as f:
print("hey there", file=f)
输出
它将创建一个名为data.txt的新文件,内容如下。
hi there
write()函数比print()函数更有效。所以我的建议是使用write()函数来写文件中的行。
Python 向文件中写入多行。
要在Python中向一个文件写多行,可以使用open()函数,然后使用**writelines()**函数。
writelines()方法将一个列表中的项目写到文件中。这些文本将根据文件模式和流的位置插入。
writelines()的语法
file.writelines(list)
参数
| 列表 | 将被插入的文本或字节对象的列表。 |
例子
我们将写三行到一个新文件。
with open('data.txt', 'a') as f:
line1 = "PS5 Restock India \n"
line2 = "Xbox Series X Restock India \n"
line3 = "Nintendo Switch Restock India"
f.writelines([line1, line2, line3])
输出
输出将是一个Data.txt文件,内容如下。
PS5 Restock India
Xbox Series X Restock India
Nintendo Switch Restock India
你可以看到,我们在一个新创建的文件中写了三行。
Python逐行写到csv中
要在Python中逐行写到csv文件,可以使用**file.write()函数或csv.writer()**函数。csv.writer()函数用来创建一个writer对象。
我们将看到一个file.write()方法的例子。
txt = ["PS5", "is", "currently", "unavailable", "in", "India"]
with open('shows.csv','w') as file:
for line in txt:
file.write(line)
file.write('\n')
输出
它将创建具有以下内容的shows.csv文件。
PS5
is
currently
unavailable
in
India
并且我们得到csv文件里面的文本。
我们来看看csvwriter的方法。
import csv
txt = ["PS5", "is", "currently", "unavailable", "in", "India"]
with open('shows.csv', 'w', newline='') as file:
writer = csv.writer(file)
writer.writerows(txt)
输出
P,S,5
i,s
c,u,r,r,e,n,t,l,y
u,n,a,v,a,i,l,a,b,l,e
i,n
I,n,d,i,a
本教程就到此为止。
The postHow to Write Line to File in Pythonappeared first onAppDividend.