本教程直接从语言特性入手,旨在让没有编程基础的小白或者其他语言领域大佬快速上手Python,本文只介绍最基础内容,深入使用Python不在本教程范围😉
一、文件处理
1.1打开文件
【1】使用open()函数打开文件
在 Python 中使用文件的关键函数是 open() 函数。open打开文件的不同方法(模式):
模式 | 功能 | 说明 |
---|---|---|
“r” | 读取 | 默认值。打开文件进行读取,如果文件不存在则报错。 |
“a” | 追加 | 打开供追加的文件,如果不存在则创建该文件。 |
“w” | 写入 | 打开文件进行写入,如果文件不存在则创建该文件。 |
“r+” | 读写模式 | 打开一个文件用于读写。文件指针将会放在文件的开头。 |
“x” | 创建 | 创建指定的文件,如果文件存在则返回错误。 |
这些操作模式在下面几节内容会进行阐述。本章内容基本就是掌握open的使用
Python中可以使用open()函数打开文件,一般示例如下:
ChiHuo=open('Chihuo.txt',)
print(ChiHuo.read())
ChiHuo.close()
新建一个名为"Chihuo.txt"的文件放在与主程序在同文件目录下,使用open(‘Chihuo.txt’)打开文件,打开文件后Python将表示这个文件的对象赋值给Chihuo
在print函数中使用read读取文件的全部内容,读取的内容作为一串字符串打印出来。
在使用打开文件完毕后需要使用close关闭文件。
输出如下:
注:open和close应该成对使用,
- 没有使用close也就是没有关闭文件可能导致数据丢失或受损
- 如果在程序中过早调用 close(),当程序需要使用文件时文件却已经关闭(无法访问),这会导致更多的错误
所以,推荐使用以下写法:
with open('Chihuo.txt',) as ChiHuo:
print(ChiHuo.read())
这里使用with调用open打开文件,as的作用是起别名,也就是将打开的文件对象起一个能够代表的名字——ChiHuo
使用关键字 with的优点是: 在不再需要访问文件后将其关闭。
输出如下
【2】打开特定路径的文件
有时候文件不一定与当前运行的程序放在同一目录下,这就需要在程序中指定需要访问的目录,示例如下:
with open('D:\Program Files\JetBrains\Chihuo.txt',) as ChiHuo:
print(ChiHuo.read())
直接使用open函数输入需要指定的文件的路劲即可打开文件
输出如下:
1.2 读取文件
1.2.1 使用循环逐行读取读取
open打开的文件相当于一组按行存储的列向量,使用循环的方式可以扫描每一行文本信息:
with open('D:\\Program Files\\JetBrains\\Chihuo.txt',) as ChiHuo:
for line in ChiHuo:
print(line)
输出如下:
每一行和每一行之间会有一行的间隔,这是因为文本中每一行都有一个看不见的换行符,调用print过程中,也会增加一个换行符,这就造成了以上现象,想要使每行紧挨着每行,使用rstrip即可。
示例如下:
with open('D:\\Program Files\\JetBrains\\Chihuo.txt',) as ChiHuo:
for line in ChiHuo:
print(line.rstrip())
输出如下:
1.2.2 读取内容生成列表
当然,也可以直接将文件生成列表:
with open('D:\\Program Files\\JetBrains\\Chihuo.txt',) as ChiHuo:
print(ChiHuo.readlines())
使用readlines()读取文件的每一行作为列表元素存放在列表中,路径中使用’‘标明文件路径,在Python中使用’‘是转义字符,所以不能直接使用,必须这么使用’\’,输出如下:
1.3 写入文件
1.3.1 写入空文件
写入文件时首先需要以写入文件的模式打开文件——这样能够获取文件的写入权限,然后我们可以使用write()函数将需要写入的内容写入文件中,使用open函数的第二个参数即可进入写入模式,示例如下:
with open('D:\\Program Files\\JetBrains\\Chihuo.txt','w') as ChiHuo:
ChiHuo.write("I'm a kitten.\nMy name is Chihuo.\nI'm two years old.\nI like cat mint and diced chicken.")
‘\n’表示换行,如果写入的文件不存在,函数open会自动创建这个文件,
注意:
如果之前已经有该文件,使用写入模式会覆盖前的文件中的内容。
Python 只能将字符串写入文本文件。要将数值数据存储到文本文件中,必须先使用函数str()将其转换为字符串格式。
输出如下:
1.3.2 为文件添加内容
在以上例子中写入完成后,继续使用open函数的追加模式——‘a’,示例如下:
with open('D:\\Program Files\\JetBrains\\Chihuo.txt','a') as ChiHuo:
ChiHuo.write("\nI'm a kitten.\nMy name is Chihuo.\nI'm two years old.\nI like cat mint and diced chicken.")
输出结果如下:
二、异常处理
程序运行过程,会遇到各种各样的输入输出,我们可以将程序运行时可能出现的问题(也就是程序运行过程时可能遇到的异常)编写一个代码块,用来告诉用户发生这些异常后用户应该怎么操作。