python day08

文件

1.今日内容

文件操作

模特主妇护士老师.txt
1,文件路径:d:\模特主妇护士老师.txt
2,编码方式:utf-8 gbk 。。。。
3,操作方式:只读,只写,追加,读写,写读.....
以什么编码方式储存的文件,就以什么编码打开进行操作。

只读:r
rb
f = open('模特主妇护士班主任',mode='r',encoding='utf-8')
content = f.read()
print(content,type(content))
f.close()

# f = open('模特主妇护士班主任',mode='rb',)
# content = f.read()
# print(content)
# f.close()

r+ 读写
r+b 读写(以bytes类型)
# f = open('log',mode='r+',encoding='utf-8')
# print(f.read())
# f.write('大猛,小孟')
# f.close()

f = open('log',mode='r+b')
print(f.read())
f.write('大猛,小孟'.encode('utf-8'))
f.close()

只写:w
wb
# 先将源文件的内容全部清除,在写。
# f = open('log',mode='w',encoding='utf-8')
# f.write('附近看到类似纠纷')
# f.close()

f = open('log',mode='wb')
f.write('附近看到类似纠纷'.encode('utf-8'))
f.close()
w+
# f = open('log',mode='w+',encoding='utf-8')
# f.write('aaa')
# f.seek(0)
# print(f.read())
# f.close()
w+b
.......


追加
# f = open('log',mode='a',encoding='utf-8')
# f.write('佳琪')
# f.close()

# f = open('log',mode='ab')
# f.write('佳琪'.encode('utf-8 '))
# f.close()

编码

2.文件操作  

只读:绝对路径和相对路径

r

rb

#绝对路径
f = open('d:\模特主妇护士班主任.txt',mode='r',encoding='UTF-8')
content = f.read()
print(content)
f.close()
#相对路径
#bytes ---->str
f = open('模特主妇护士班主任',mode='r',encoding='utf-8')
content = f.read()
f.write('fjsdlk')
f.close()
#bytes ---->str
f = open('模特主妇护士班主任',mode='r',encoding='utf-8')
content = f.read()
f.write('fjsdlk')
f.close()
f = open('模特主妇护士班主任',mode='rb',)
content = f. read()
print(content)
f.close()

 先读后追加

r+ #也可以不写

f = open('log',mode='r+',encoding='utf-8')
print(f.read())
f.write("大猛,小孟")
f.close()

先读后写

r+b 

f = open('log',mode='r+b')
print(f.read())
f.write('大猛,小孟'.encode('utf-8'))
f.close()

 

只写:

w

wb

#对于w:没有此文件就会创建文件
# 如果文件存在的话,先将源文件的内容全部清除,在写。
f = open('log',mode='w',encoding='utf-8')
f.write('骑兵步兵')
f.close()
f = open('log',mode='wb')
f.write('附近看到类似纠纷'.encode('utf-8'))
f.close()
f = open('log',mode='w+',encoding='utf-8')
f.write('aaa')
f.seek(0)
print(f.read())
f.close()

 w+b

追加:

a

ab

a+

a+b

f = open('log',mode='a',encoding='utf-8')
f.write('佳琪')
f.close()
f = open('log',mode='ab')
f.write('佳琪'.encode("utf-8"))
f.close()
f = open('log',mode='a+',encoding='utf-8')
f.write('佳琪')
f.seek(0)
print(f.read())
f.close()

功能详解

obj = open('log',mode='r+',encoding='utf-8')
content = f.read(3)  
print(content)
f.close()
# 读出来的都是字符,字符能看到这段文字的最小单位
# 是按照字节定光标的位置
obj = open('log',mode='r+',encoding='utf-8')
f.seek(3)  # 是按照字节定光标的位置
content = f.read()
print(content)
f.close()

#告诉光标的位置   

obj = open('log',mode='r+',encoding='utf-8')
# content = f.read(3)  # 读出来的都是字符,字符能看到这段文字的最小单位
f.seek(3)  # 是按照字节定光标的位置
f.tell()  # 告诉你光标的位置
print(f.tell())
# content = f.read()
# print(content)
f.close()
f.readable()  # 是否可读
line = f.readline()  # 一行一行的读
line = f.readlines() # 每一行当成列表中的一个元素,添加到list中
f.truncate(4)  # 对文件截取

  

with open('log',mode='r+',encoding='utf-8') as f,\
        open('log',mode='w+',encoding='utf-8') as f1:
    print(f.read())

  

注册和登录

 

username = input('请输入你要注册的用户名:')
password = input('请输入你要注册的密码:')
with open('list_of_info',mode='w',encoding='utf-8') as f:
    f.write('{}\n{}'.format(username,password))
print('恭喜您,注册成功')
lis = []
i = 0
while i < 3:
    usn = input('请输入你的用户名:')
    pwd = input('请输入你的密码:')
    with open('list_of_info',mode='r+',encoding='utf-8') as f1:
        for line in f1:
            lis.append(line)
    if usn == lis[0].strip() and pwd == lis[1].strip():
        print('登录成功')
        break
    else:print('账号和密码错误')
    i+=1

  

 

转载于:https://www.cnblogs.com/liranranwangmeng/p/10034779.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值