python_文件操作
2019-01-21 02:42:51来源:博客园 阅读 ()
一、文件处理基本形式
# 1. 打开文件,得到文件句柄并赋值给一个变量 # 文件句柄 = open('文件路径', '模式', '操作文件的字符编码') f = open('carter', 'r', encoding='UTF-8') # 默认打开模式就为r # 2. 通过句柄对文件进行操作 data = f.read() print(data) # 3. 关闭文件 f.close() # 回收操作系统的资源
二、打开文件的模式
1. 打开文件的模式有(默认为文本模式):
r ,只读模式【默认模式,文件必须存在,不存在则抛出异常】 w,只写模式【不可读;不存在则创建;存在则清空内容】 a, 之追加写模式【不可读;不存在则创建;存在则只追加内容】 2. 对于非文本文件,我们只能使用b模式,"b"表示以字节的方式操作(而所有文件也都是以字节的形式存储的,使用这种模式无需考虑文本文件的字符编码、图片文件的jgp格式、视频文件的avi格式)
rb wb ab 注:以b方式打开时,读取到的内容是字节类型,写入时也需要提供字节类型,不能指定编码 3. 了解部分
"+" 表示可以同时读写某个文件 r+, 读写【可读,可写】 w+,写读【可读,可写】 a+, 写读【可读,可写】 x, 只写模式【不可读;不存在则创建,存在则报错】 x+ ,写读【可读,可写】 xb
三、操作文件的方法
f.read() #读取所有内容,光标移动到文件末尾 f.readline() #读取一行内容,光标移动到第二行首部 f.readlines() #读取每一行内容,存放于列表中 f.write('1111\n222\n') #针对文本模式的写,需要自己写换行符 f.write('1111\n222\n'.encode('utf-8')) #针对b模式的写,需要自己写换行符 f.writelines(['333\n','444\n']) #文件模式 f.writelines([bytes('333\n',encoding='utf-8'),'444\n'.encode('utf-8')]) #b模式 #了解 f.readable() #文件是否可读 f.writable() #文件是否可读 f.closed #文件是否关闭 f.encoding #如果文件打开模式为b,则没有该属性 f.flush() #立刻将文件内容从内存刷到硬盘 f.name
小练习
while True: msg = """\n\033[0;34m1 注册\n2 查看\033[0m """ print(msg) choice = input('\033[31;0m请输入编号>>:\033[0m').strip() if choice == '1': # print('注册') phone = input('\033[32;0m请输入手机号>>>:\033[0m').strip() name = input('\033[33;0m请输入用户名>>>:\033[0m').strip() pwd = input('\033[34;0m请输入密码>>>:\033[0m').strip() sex = input('\033[35;0m请输入性别>>>:\033[0m').strip() age = input('\033[36;0m请输入年龄>>>:\033[0m').strip() with open('db.txt', 'a', encoding='UTF-8') as f: f.write('%s,%s,%s,%s,%s\n' % (phone, name, pwd, sex, age)) elif choice == '2': # print('查看') phone = input('\033[37;0m请输入手机号:\033[0m').strip() with open('db.txt', 'rt', encoding='UTF-8') as f: for line in f: if line.startswith(phone): print(line, end='') else: print('\033[31;1m此用户还没注册\033[1m') break else: print('\033[31;1m输入的不正确\033[1m')
原文链接:https://www.cnblogs.com/qinxin1/p/10285305.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
下一篇:Python-爬虫小计
- python3基础之“术语表(2)” 2019-08-13
- python3 之 字符串编码小结(Unicode、utf-8、gbk、gb2312等 2019-08-13
- Python3安装impala 2019-08-13
- 小白如何入门 Python 爬虫? 2019-08-13
- python_字符串方法 2019-08-13
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash