Python调用文件进行输入输出,我们可以用一个简单的小例子来更清楚的学习输入输出
#学生成绩管理简易系统
file = "studentInfo.txt" #定义文件地址为全局
def sysMenu():
# print("-"*50)
print("学生成绩简易系统".center(50,"-"))
print("-"*50)
print("1.录入成绩")
print("2.查询成绩")
print("3.打印全部学生信息")
print("4.退出系统")
print("-"*50)
# print("请选择:",end="")
def inputStudentScore():
print("录入学生成绩".center(30,"*"))
global file
temp ='y'
while(temp.lower()=="y"):
name = input("请输入学生姓名")
score = float(input("请输入学生成绩"))
with open (file,"a+",encoding='utf-8') as f: #with 这个非常好用
f.write("%s,%.lf\n"%(name,score))
f.close()
print(f"{name}输入学生成绩成功!!!\n")
temp =input("是否继续录入学生成绩(Y|N)")
def findStudentScore():
print("查询指定学生成绩".center(30,"*"))
global file
name = input("请输入要查找学生的姓名:")
with open(file,"r",encoding='utf-8') as f:
row = f.readline()
while row:
if row.strip().split(",")[0] == name:
print(f"学生:{name}的成绩为{row.strip().split(',')[1]}") #注意双引号只能有一个!!!
row = f.readline()
else:
print("查询完毕!!!")
f.close()
def findAllStudentScore():
print("查询全部学生成绩".center(30,"*"))
global file
with open(file,"r",encoding='utf-8') as f:
for i in f.readlines():
# if i==Null:
# print("文件为空!!!")
# break
list1 = i.strip().split(",")
print(f"姓名:{list1[0]},成绩:{list1[1]}")
else:
print("查询信息完毕!!!")
f.close()
def exitSystem():
e_str = input("是否真的退出系统???(Y|N)")
if e_str.upper() =="Y":
exit(0)
else:
print("你果真没走 欢迎回来!!!")
def stuSystem():
temp = "y"
while(temp.upper() == "Y"):
sysMenu()
mySelect = input("请选择:")
if mySelect =="1":
inputStudentScore()
elif mySelect =="2":
findStudentScore()
elif mySelect =="3":
findAllStudentScore()
elif mySelect =="4":
exitSystem()
temp=input("是否继续操作本系统(Y|N)")
print("欢迎下次再来!!!")
if __name__=="__main__":
stuSystem()
还有更多需要完善的地方… 比如:添加更改学生成绩功能,添加注册登录退出功能