python基础4
一。普通文件相关操作方法
1. 打开文件
语法: open("路径"[,模式])
模式:
| 模式 | 说明 |
|---|---|
| r | 读取模式(默认) |
| w | 写入模式,如果文件不存在则创建,如果文件存在则进行截断,从文件开头位置进行写入 |
| x | 独占写入模式 如果文件存在则报FileExistError异常,从文件开头位置写入 |
| a | 附加模式 |
| b | 二进制模式 (与其他模式结合使用)例: rb wb |
| t | 文本模式 (默认,与其他模式结合使用)例:r== rt w== wt |
| + | 读写模式(与其他模式结合使用)例:r+ rb+ w+ wb+ x+ |
注意:
-
open打开的文件必须close关闭
-
r+和w+:
-
区别:r+保留 w+截断
-
相同:从文件头部位置写入
-
2. 常见文件操作方法
| 方法 | 描述 |
|---|---|
| close() | 关闭文件,在open()打开后使用此方法关闭,如不关占用系统的可打开文件的句柄数 |
| name | 获取文件名 |
| read() | 读取文件内容 字符 |
| write() | 写入文件内容 无换行 |
| seek() | 把文件指针移动到参数表示的位置,0表示文件的开始位置 |
| tell() | 获得文件指针位置,标记当前位置 |
| readline() | 读取一行信息,如果给出参数,则庄子一行的一部分注意:参数表示要取得的字符的数量 |
| readlines() | 读取所有数据,返回一个列表,文件中每行都是列表中的一个元素如果给出参数:则参数表示读取的内容的总长,但是参数<一行的长度则读取整行 |
| writelines() | 把一个列表中的字符串写入文件,注意writelines不带换行 |
f=open('abc.txt','r',encoding='utf-8')
|
# f=open("abc.txt",'a',encoding="utf-8")
|
3. 字符编码
-
ASCII 是一种单字节的编码
-
MBCS (Multi-Byte Character Set) 是统称,双字节,GBK
-
Unicode 4个字节表示一个字符 UTF-8
4. with xxx as xxx语句
特点:自动关闭
语法: with open() as 变量名:
操作代码
二. 练习
|
练习1: read和write的练习要求实现如下功能:从键盘输入字符,逐个把它们写入到demo01.txt文件中,直到输入一个#为止。 f=open("demo01.txt",'a',encoding="utf-8")
|
|---|
|
练习2:要求:实现一个文件复制器,将用户指定文件,复制到指定的位置,并保存成指定的名称 def copy(): |
|
练习3:有两个文件,每个文件中都有一行字符,要求把这两个文件的信息合并,并且按照字母的顺序排序,输出到一个新的文件中。 with open("one.txt",'r+') as f1:
|
|
练习4:读取文本文件data.txt中所有整数,将其排序后写入文本文件data_asc.txt中 with open("data.txt",'r+') as f1:
|

浙公网安备 33010602011771号