Python基础之文件操作
Open函数:用于文件的处理
- 打开文件
- 进行文件的操作
一、文件的打开:
文件句柄=open("文件名","打开模式")
1.文件基本打开模式:
- r:只读模式
- w:只写模式(不可读,文件不存在则创建文件,文件如果存在则清空文件)
- x:只写模式(不可读,文件不存在则创建,存在则报错)
- a:追加模式(可读,文件不存在则创建文件,文件存在则追加内容)
2.“+”表示可以同时读写某个文件:
- r+:表示读写(可读,可写)
- w+:表示写读(可读,可写):默认情况下,先写再读,因为写完后,文件的指针移动到写内容的末尾,这时再读是读不到内容;文件不存在则创建,文件存在则清空;
- x+:表示写读(可读,可写):类似w+的情况,但是文件如果存在则报错,不存在则创建;
- a+:表示写读(可读,可写):默认情况下,先写再读,文件存在写是以追加的方式来写,因为写完后,文件的指针移动到写内容的末尾,这时再读是读不到内容;
3."b"表示以字节的方式操作
- rb 或 r+b
- wb 或 w+b
- xb 或 w+b
- ab 或 a+b
文件操作的举例:
def log_in(user,pwd):
"""
#验证用户的登录信息
:param user:
:param pwd:
:return:
"""
f1 = open("db", 'r', encoding="utf-8")
for line in f1:
line = line.strip()
line_list = line.split("$")
if line_list[0] == user and line_list[1] == pwd:
return True
return False
def register(user,pwd):
"""
#注册用户名信息
:param user:
:param pwd:
:return:
"""
with open("db",'a',encoding="utf-8") as f2:
temp = "\n" + user +"$" + pwd
f2.write(temp)
return True
def user_exist(user):
"""
#验证要注册的用户名是否已存在
:param user:
:return:
"""
with open("db",'r',encoding="utf-8") as ff:
for line1 in ff:
line1 = line1.strip()
line1 = line1.split("$")
if line1[0] == user:
return True
return False
#判断用户的登录模式
inp = input("登录:1,注册:2")
if inp ==1:
username = input("请输入用户名:")
passwd = input("请输入密码:")
is_login = log_in(username, passwd)
if is_login:
print("登录成功")
else:
print("登录失败")
else:
username = input("请输入用户名:")
passwd = input("请输入密码:")
is_register = user_exist(username)
if is_register:
print("用户名已存在,注册失败")
else:
is_chk = register(username,passwd)
if is_chk:
print("注册成功")
else:
print("注册失败")
浙公网安备 33010602011771号