在python中文件的读取分为三步走:
读:打开文件 -> 读文件 -> 关闭文件
(有点像把大象放进冰箱需要几步?的问题)
open函数主要运用到两个参数,文件名和mode,文件名是添加该文件对象的变量,mode是告诉编译器和开发者文件通过怎样的方式进行使用。因此在Python中打开文件的代码如下:
file_object = open('filename','mode','encoding')
mode
mode参数可以不写,默认mode参数是“r”。mode参数如下:
file = open('testfile.txt', 'w')
file.write('Hello World\n')
file.write('This is our new text file\n')
file.write('and this is another line. \n')
file.write('Why? Because we can. \n')
file.close()
运行代码以后,在本地就会出现一个叫test file的文本文件,里面的内容为:
Hello World
This is our new text file
and this is another line
Why? Because we can.
file = open('testfile.text', 'r')
print(file.read())
将会把该文本文件中所有的内容展示出来
另外,如下只想打印文件文件中的部分内容,也可以采用下面的方式
file = open('testfile.txt', 'r')
print(file.read(5))
编译器将会读写文本文件中存储的前5个字符
如果想要逐行输出,而不是把所有内容打印出来,以至于没有换行、所有内容都挤在一起,那么需要调用readlines()函数。当调用这个方法的时候,将会把文本中的每一行作为一个元素放在list中,返回包含了所有行的list。
file = open('testfile.txt', 'r')
print(file.readlines())
如果需要指定打印出第二行,代码如下:
file = open('testfile.txt', 'r')
print(file.readlines()[1])
我们也可以采用循环的方式的将文件中的内容逐行输出:
file = open('testfile.txt', 'r')
for line in file:
print(line)
文件写入也是三步:打开文件——写入文件——关闭文件
file = open('testfile.txt', 'w')
file.write('This is a test')
file.write('To add more lines.')
file.close()
当操作完成之后,使用file.close()来结束操作,从而终结使用中的资源,从而能够释放内存。
为了避免打开文件后忘记关闭,占用资源或当不能确定关闭文件的恰当时机的时候,我们可以用到关键字with,举例如下:
# 普通写法
file1 = open('abc.txt','a')
file1.write('张无忌')
file1.close()
# 使用with关键字的写法
with open('abc.txt','a') as file1:
#with open('文件地址','读写模式') as 变量名:
#格式:冒号不能丢
file1.write('张无忌')
#格式:对文件的操作要缩进
#格式:无需用close()关闭
1、打开文本文件:
fh = open('hello.txt', 'r')
2、读取文本文件:
fh = open('hello.txt', 'r')
print(fh.read())
3、将新的信息写入文本中、并擦除原来的信息:
fh = open('hello.txt', 'w')
fh.write('Put the text you want to add here')
fh.write('and more lines if need be.')
fh.close()
4、在现存的文件中加入新的内容、不会擦除原来的内容:
fh = open('hello.txt', 'a')
fh.write('We Meet Again World')
fh.close()