如何在Python中写线到文件

305 阅读3分钟

How to Write Line to File in Python

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.