python文件读取与写入

Python016

python文件读取与写入,第1张

open(filepath) :打开文件

open(filepath,'r') :打开方式,默认是读取

open(filepath).read() :读取文件中的内容

open(filepath).readline() :读取文件中一行的内容

open(filepath).readline()[1] :读取文件中的内容,返回值是列表。

open(filepath).close() :关闭文件

open(filepath).seek(0) :将光标回到首位

with open()函数,不用close()方法,默认自动关闭,所以需要制定一些规则.

文件内建函数和方法:

open() : 打开文件

read() :输入

readline() :输入一行

seek() :文件内移动

write() :输出

close() :关闭文件

用python读取文本文件,对读出的每一行进行操作,写法如下:

f = open("test.txt", "r")

while True:

line = f.readline()

if line:

pass    # do something here

line=line.strip()

p=line.rfind('.')

filename=line[0:p]

print "create %s"%line

else:

break

f.close()

扩展资料:

Python将txt文件读取到一个字符串里的操作方法如下:

1、首先,添加Python文件和文本文件以在vscode中读取,如下图所示

2、其次,完成上述步骤后,在txt文件中写入一些内容以用于内容读取,只需将其写入即可,如下图所示。

3、接着,完成上述步骤后,必须导入os文件,以便可以在os中调用某些文件操作方法,如下图所示。

4、然后,完成上述步骤后,打开要读取的文件,并将读取的内容数据复制到字符串中,如下图所示。

5、随后,完成上述步骤后,打印字符串以显示内容,以方便参考,如下图所示。

6、接着,完成上述步骤后,运行jy.py文件,该文件将开始读取和打印内容,如下图所示。

7、最后,完成上述步骤后,可以看到已读取txt文件的内容,如下图所示。

1 文件读取全文本操作

在一定场景下我们需要把文本全部内容读取出来,进行处理。python提供三种函数读取文件,分别是read readline readlines,

read():读取文件的全部内容,加上参数可以指定读取的字符。

readline():读取文件的一行。

readlines():读取文件的所有行到内存中。

不同场景下我们可以选择不同函数对文件进行读取。

1.1 方法一

file_name = input("请输入你要打开的文件的完整路径及名称")

file= open(file_name, "r")

txt=file.read()

# 全文本的处理

file.close()

使用read函数将文件中的内容全部读取,放在字符串变量txt中。这样操作适合于文本较小,处理简单的情况,当文件较大时,这种方式处理时不合适的。一次性读取较大的文件到内存中,会耗费较多的时间和资源。这时候分批处理效果更好。

1.2 方法二

file_name = input("请输入你要打开的文件的完整路径及名称")

file= open(file_name, "r")

txt= file.read(4)

# 文本的处理while txt != ""txt= file.read(4)

# 批量文本处理

file.close()

这种方法适合于分批处理文本信息,每次批量读入,批量处理,不会对内存造成较大的压力。

1.3 方法三

file_name = input("请输入你要打开的文件的完整路径及名称")

file= open(file_name, "r")for line infile.readlines():

# 处理每一行数据

file.close()

这种处理方式适合处理以行为分割特点的文本,并且文本较小,因为这种处理方式需要一次性把文件所有内容读取到内存中。

1.4 方法四

file_name = input("请输入你要打开的文件的完整路径及名称")

file= open(file_name, "r") # 这里的file时文件句柄for line infile:

# 处理每一行数据

file.close()

这种方式和方法三中的区别是分行读入,逐行处理,不会一次性把文件所有内容都读入到内存中,对一些大文件的处理是很有效的。

2 文件写入文本操作

文件写入有两种写入函数和一种辅助支持。

write():向文件中写入一个字符或者字节流

writelines():将一个元素全为字符串的列表写入到文件中 需要注意的是,writelines写入列表元素的时候会把列表元素的内容拼接到一起写入,不会有换行和空格 。

seek(): 辅助写入函数offset偏移量参数代表含义如下

0 - 文件开头

1 - 当前位置

2 - 文件结尾

2.1 方法一

file_name = input("output.txt", "w+")

text= "hello world!"file_name.write(text)

file.close()

2.2 方法二

file_name = input("output.txt", "w+")

list= ["中午","早上","晚上"]

file_name.writelines(list)for line infile:

# 读取写入的数据,这时候发现是没有任何内容的

file.close()

我们增加一行代码就可以读取到写入的文件内容,利用seek()函数调整写操作指针的位置,可以实现写操作之后的正常读取。

file_name = input("output.txt", "w+")

list= ["中午","早上","晚上"]

file_name.readlines(list)

file_name.seek(0) # 调整写的指针到文件的开始位置for line infile:

# 读取写入的数据,这时候会读出一行写入的数据。

file.close()