我是python的新手,在学习OOP时,我尝试制作一个脚本,该脚本可以接受用户输入指定数量的条目(或者直到输入诸如“ exit”之类的特殊关键字)并将其写到名为“ entries.txt”,但是代码无法正常工作。有人可以指导我或修改我的代码吗?谢谢!
num = int(input("number of students: "))
n = input("Name : ")
a = input("Age : ")
m = input("Marks : ")
class Students:
def __init__(self, n, a, m):
self.name = n
self.age = a
self.marks = m
def file(self):
for i in range(1,num):
with open("entries.txt","a+") as f:
f.write("Name : %s \n" %self.name)
f.write("Age : %s \n" %self.age)
f.write("Marks : %s \n" %self.marks)
f.write("----------------------------------------- \n")
s1 = Students(n, a, m)
s1.file()
我期望输出类似 姓名:安德鲁 年龄:20 分数:55
然后程序不应退出,而只是要求再次输入。
答案 0 :(得分:1)
num = int(input("number of students: "))
class Student:
def __init__(self, n, a, m):
self.name = n
self.age = a
self.marks = m
def file(self):
with open("entries.txt","a+") as f:
f.write("Name : %s \n" %self.name)
f.write("Age : %s \n" %self.age)
f.write("Marks : %s \n" %self.marks)
f.write("----------------------------------------- \n")
for i in range(num):
n = input("Name : ")
a = input("Age : ")
m = input("Marks : ")
s1 = Student(n, a, m)
s1.file()
关于命名的一些注意事项:名称类为单数而不是复数。避免使用变量名,例如'a','x'...等,应使用有意义的名称。