python中文件读取_python中文件读写的相关操作及应用

1:既读又写

1419429-20180713224331213-943062214.png

1 with open('数据',mode='r+',encoding='utf-8') as f:2 print(f.read()) #输出结果:python与人工智能密切相关

3 f.write('java也不错')4 print(f.read()) #输出结果:无输出 ,如果我们想打印

5 #写入的内容,但是因为光标已经

6 #移到了字符串的结尾了,所以这里我们

7 #可以使用tell()与seek()来确定位置

改进过后:

1 with open('数据', mode='r+', encoding='utf-8') as f:2 print(f.read()) #输出结果:python与人工智能密切相关

3 f.write('java也不错')4 print(f.tell()) #输出结果:46 其中一个字母1个字节,一个汉字三个字节,所以下面-13

5 f.seek(f.tell()-13)6 print(f.read()) #输出结果:java也不错

seek()将官光标的位置移到需要的位置,tell()返回当前光标的位置

2:写读(不常用)

1 with open('数据', mode='w+', encoding='utf-8') as f:2 f.write('java也不错')3 print(f.read()) #输出结果:无任何输出,相比w的不同处就在于f.read()不会报错,同样,a+也是如此

4 #就不在这里做赘述了

3:readline()用法:每次只读一行

1 with open('数据', mode='r+', encoding='utf-8') as f:2 print(f.readline()) #输出结果:java也不错

3 print(f.readline()) #输出结果:python也是个好工具

4 print(f.readline()) #输出结果:c++也不逊色呦

4:readlines()用法:每一行当作列表中的一个元素,然后打印出来

1 with open('数据', mode='r+', encoding='utf-8') as f:2 print(f.readlines()) #输出结果:['java也不错\n', 'python也是个好工具\n', 'c++也不逊色呦']

5:for循环(可以将文件中的所有内容按照原文件格式打印)

1 with open('数据', mode='r+', encoding='utf-8') as f:2 for line inf:3 print(line) #输出结果:java也不错

4 #python也是个好工具

5 #c++也不逊色呦

6:注册登录的应用

username = input('请输入您需要注册的用户名:')

password= input('请输入您的密码:')

with open('list_of_info',mode='w',encoding='utf-8') as f:

f.write('{}\n{}'.format(username,password))

list_data=[]

i= 1

while i <= 3:

usn= input('请输入您的用户名:')

psd= input('请输入您的密码:')

with open('list_of_info', mode='r+', encoding='utf-8') as f1:for line inf1:

list_data.append(line)#print(list_data)

if usn == list_data[0].strip() and psd == list_data[1].strip():print('登录成功')break

else:print('请重新登录!')

i+= 1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值