文件读取
文件路径是一个字符串
path = "D:/Python/0806.txt"
注意:1.文件名要有后缀名 文件名.后缀名
2./ 或 \\ 表示下级
3.路径可以是绝对路径也可以是相对路径
path = "0806.txt" 如果路径里只有文件名 那么表示的是相对路径
相当于和该Python文件是同级 编辑的文件
encoding 编码格式 gbk utf-8 ASCII
格式代码:file = open("C:/Users/Administrator/Desktop/文件8.8.txt",mode= "r")
mode = "r" 读取文件
mode = "a" 模式 追加模式 append 文件不存在则新建,文件存在则在文件末尾追加内容
mode = "rb" 读取二进制文件
mode = "w" 写文件
mode = "wb" 写二进制文件
mode = "ab" 在原文件末尾添加新的内容 不能用\n换行
mode = "r+" 在原文件末尾添加新的内容 可以用\n换行
mode = "+"模式 增强模式plus 也是辅助模式不能单独使用
file.read(int) 代表读取的字符长度,汉字也是一个字符长度,如果不规定长度,代表全部读取
read()
功能:读取文件
格式1:
文件io对象.read()
返回值:整个文件的字符
格式2:
文件io对象.read(字符长度)
返回值:指定长度的字符
file.write("ninao") 写文件
write()
功能:写入文件
格式:文件io对象.write(字符串)
返回值:写入字符串的长度
print(file.read()) 读取文件后 光标位于文件的最后位置
file.seek(0) 将读取文件的光标移动到首位
file.seek(20) 移动光标位置
tell()
功能:查看当前指针的位置
格式:文件io对象.tell()
返回值:整数
file.close() #关闭文件
close()
功能:关闭文件
格式:文件io对象.close()
返回值:None
print(file.readline(1))
无参数时,表示读取整行。有参时,数字表示读取一行里面的字符总数
print(file.readlines(1))
无参时,读取全部,返回值为每行组成一个元素(\n结束)的列表 ['你好\n','我的世界\n']
有参时,数字表示要读取到的字符总数,参数如果超过一行的字符总数时,自动读取下一行,作为下一 个列表元素
写文件 #如果文件名不存在,就是新建,存在的话,就会覆盖原来的内容
writelines()
功能:将序列写入文件中
格式:文件io对象.writelines(序列)
返回值:None
truncate()
功能:字符串截取操作
格式:文件io对象.truncate(字节长度)
返回值:截取的字节长度
Import os #导入文件模块
os.rename(要修改的目录名, 修改后的目录名)
os.remove(path(要移除的文件路径))
将原文章中的"我"改为"666" import os old_path = "C:/Users/Administrator/Desktop/好难过.txt" new_path = "C:/Users/Administrator/Desktop/好难过1.txt" file_old = open("C:/Users/Administrator/Desktop/好难过.txt",mode="r") file_new = open("C:/Users/Administrator/Desktop/好难过1.txt",mode="w") str_old = '我' str_new = '666' data_read = file_old.read() for i in data_read: if i == str_old: i = str_new file_new.write(i) file_old.close() file_new.close() os.remove(old_path) os.rename(new_path,old_path)
一个文字就是一个字符,无论一个汉字 还是一个英文字或者数字都是一个字符
存储单位,文字存储的单位需要使用字节。
1KB = 1024B
1MB = 1024KB
1GB = 1024MB
ITB = 1024GB
1PB = 1024TB
字符就是字符的编码类型。
ASCII码 美国专用
每种语言单独一种编码格式,为了使得计算机能够操作某种语言,中文(GB2313,GB10300,GBK,BIG5...) GBK格式中一个汉字需要2个字节表示,拼音和数字依然是一个字节
几乎所有语言都可以使用的字符集,utf类字符集,能够表示世界上绝大多数的文字。(utf-8) utf-8字符集表示汉字需要3个字节,表示拼音和数字还是1个字节