八月六号作业
# 1.利用文件操作写一个用户注册功能 # 获取用户输入的用户名和密码然后将它们写入文件中 """ a = 1 while a ==1: while a == 1: user = input("请输入用户名:").strip() with open("user.txt",mode="r",encoding="utf-8") as f1: for i in f1: i = i.split(':',1) if i[0] == user: print("用户名已存在") break else: a = 2 while a == 2: pwd1 = input("请输入密码:").strip() pwd2 = input("请确认密码:").strip() if pwd1 == pwd2: with open("user.txt",mode="a",encoding="utf-8") as f2: f2.write("%s:%s\n"%(user,pwd1)) print("注册成功!") a = 0 else: print("两次密码不同") """ # 2.利用文件操作写一个简单的拷贝程序 # 课上讲过,再看代码理解一下 ''' add = input("请输入需要拷贝的文件地址:") f = open(r"%s2"%add,mode='w',encoding="utf-8") f.close() with open(r"%s"%add,mode="r",encoding='utf-8') as f1,\ open(r"%s2"%add,mode='a',encoding='utf-8') as f2: for i in f1: f2.write(i) ''' # 3.写函数,判断用户传入的对象(字符串、列表、元组)长度是否大于5 ''' def len5(a): if len(a) > 5: print("长度大于五") return True else: print("长度不大于5") return False ''' # 扩展题: # 1.思考如何修改文件内容 # eg:文件内容是oscar 666 # 利用文件操作将文件内容里面的oscar修改为jason # 方法一(耗内存,省硬盘) ''' with open('eg',mode='r',encoding='utf-8') as f1: data = f1.read() data = data.replace('oscar','jason') with open('eg', mode='w', encoding='utf-8') as f2: f2.write(data) ''' # 方法二(费硬盘,省内存) ''' import os with open('eg',mode='r',encoding='utf-8') as f1,\ open('.eg',mode='w',encoding='utf-8') as f2: for i in f1: f2.write(i.replace('oscar','jason')) os.remove('eg') os.rename('.eg','eg') '''
user.txt :
a:123 b:456 c:789