Python基础学习-文件操作

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/linsongbin1/article/details/80752877

最简单的写文件操作

# 往文件里面写数据
file1 = open("test.txt", "w", encoding="utf-8")
file1.write("Sam哥哥")
file1.close()

使用open方法,打开文件,并指定编码为utf-8。代码运行完后,会生成一个test.txt文件,文件内容如下:

Sam哥哥

最简单的读文件操作


# 从文件里读取数据
file2 = open("test.txt", encoding="utf-8")
print(file2.read())
file2.close()

输出结果如下:

Sam哥哥

往文件里面追加内容


# 往文件里面写数据
file1 = open("test.txt", "w", encoding="utf-8")
file1.write("Sam哥哥")
file1.close()

# 往文件里面追加内容
file3 = open("test.txt", "a" ,encoding="utf-8")
file3.write("|黄同学")
file3.close()

运行成功后,test.txt文件里内容变成:

Sam哥哥|黄同学

注意如果是往文件里面追加内容,模式要使用a,不能使用w了。


逐行读取文件中的内容


假设test.txt文件里内容如下:

1、Sam哥哥
2、黄同学

如果想逐行输出,可以使用如下的代码:

# 逐行读取
file = open("test.txt", encoding="utf-8")
for line in file.readlines():
    print(line)

输出结果如下:

1、Sam哥哥

2、黄同学

构造in语句


在工作中,经常需要构造一个in语句批量查询数据。在python 3里面构造in语句极其简单。

假设test.txt文件的内容如下:

111
2222
33333
4444
5555

这个时候我们希望以逗号作为分隔符,构造一个in语句,可以如下这么做:

# 初始化inStatement变量
inStatement = "in("

# 打开文件
file = open("test.txt", encoding="utf-8")

# 逐行读取,并去掉每行的换行符
for line in file.readlines():
    inStatement = inStatement + line.strip("\n") + ","

# 使用[:-1]去掉最后一个逗号,并追加一个)
print(inStatement[:-1] + ")")

运行结果如下:

in(111,2222,33333,4444,5555)

如果想构造字符串的in语句,也很简单。把

inStatement = inStatement + line.strip(“\n”) + “,”

换成

inStatement = inStatement + “’” + line.strip(“\n”) + “’” + “,”

即可。完整代码如下:

# 初始化inStatement变量
inStatement = "in("

# 打开文件
file = open("test.txt", encoding="utf-8")

# 逐行读取,并去掉每行的空格
for line in file.readlines():
    inStatement = inStatement + "'" + line.strip("\n") + "'" + ","

# 使用[:-1]去掉最后一个逗号,并追加一个)
print(inStatement[:-1] + ")")

输出结果如下:

in('111','2222','33333','4444','5555')

猜你喜欢

转载自blog.csdn.net/linsongbin1/article/details/80752877