读写文件是日常开发中最高频的操作,从文件中读取你需要处理的数据,根据处理逻辑编写代码,将处理好之后的结果保存到结果文件中。 读取数据通常有两种模式 第一种,读取用
读写文件是日常开发中最高频的操作,从文件中读取你需要处理的数据,根据处理逻辑编写代码,将处理好之后的结果保存到结果文件中。
读取数据通常有两种模式
通过input函数来读取键盘输入,用法如下
hello
>>> a
'hello'
执行到input函数时,程序会先暂停,当用户输入内容,并按回车确认之后,自动将键盘输入的内容进行保存和记录。
文件内容的读取, 首先需要通过内置函数open打开文件,用法如下
>>> f = open('result.txt')>>> f
<open file 'result.txt', mode 'r' at 0x7fbf5adaa540>
返回值我们称之为文件句柄,可以看到在返回值中显示了mode值,这个值对应的是文件的打开模式,常用的有以下3种
文件句柄本质是一个生成器,可以通过next函数依次打印每一行的内容
>>> next(f)'ACTB\n'
>>> next(f)
'GAPDH\n'
>>> next(f)
'PGK1\n'
>>> next(f)
'PPIA\n'
当然也可以循环打印,写法如下
... print(line)
...
在python中,还提供了一系列的read方法来读取文件,用法如下
# 返回值为一个字符串
>>> f = open('result.txt')
>>> f.read()
'A\nB\nC\nD\nE\nF\n'
>>>
>>>
# readline方法依次返回文件的每一行
>>> f = open('result.txt')
>>> f.readline()
'A\n'
>>> f.readline()
'B\n'
>>>
>>>
# readlines方法一次读取所有行
# 返回值为列表
>>> f = open('result.txt')
>>> f.readlines()
['A\n', 'B\n', 'C\n', 'D\n', 'E\n', 'F\n']
对于文件句柄而言,打开之后,必须关闭,写法如下
>>> f.readlines()
['A\n', 'B\n', 'C\n', 'D\n', 'E\n', 'F\n']
>>> f.close()
文件的写入是类似的,将文件的打开模式替换为w, 并调用write方法
>>> f.write('hello\n')
>>> f.close()
write方法一次写入一个字符串,如果要写入多行,可以多次调用write方法,注意在字符串末尾添加换行符来正确显示。
为了更加安全方便的进行文件读写,python提供了with语句,写法如下
# 循环读取文件# 每次读取一行
with open('result.txt') as f:
for line in f:
print(line)
# 写入文件
# 遍历需要输出的内容列表
# 每次输出一行
with open('result.txt', 'w') as f:
for line in list:
f.write(line)
with语句会自动执行关闭句柄的操作,这样简化了代码,不要每次都去写关闭句柄的操作。
·end·
一个只分享干货的
生信公众号