You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python Student类代码中添加用户输入实现实例化?

实现用户输入创建Student实例的方法

核心思路

用Python内置的input()函数获取用户输入的各项信息,其中年龄需要转换为整数类型(input()默认返回字符串),再将这些输入值作为参数传入Student类的构造方法,完成实例创建。

修改后的完整代码

class Student:
    def __init__(self, first, last, age, major):
        self.first = first 
        self.last = last
        self.age = age
        self.major = major
        self.courses = [] 
    
    def profile(self):
        print("Student name", self.first, ' ', self.last)
        print("Student age:", self.age)
        print(f"Major: {self.major}")
        
        
    def enrol(self, course):
        self.courses.append(course)
        print("enrolled ", self.first," in", course)
        
    
    def show_courses(self):
        print(f"{self.first + ' ' + self.last} is taking the following courses")
        for course in self.courses:
            print(course)
        
# 获取用户输入
first_name = input("请输入学生的名:")
last_name = input("请输入学生的姓:")
# 处理年龄输入,避免非数字导致报错
try:
    student_age = int(input("请输入学生的年龄:"))
except ValueError:
    print("年龄必须输入数字,默认设置为20")
    student_age = 20
student_major = input("请输入学生的专业:")

# 创建Student实例
s = Student(first_name, last_name, student_age, student_major)
    
s.enrol('Biochemistry I')    
s.enrol('Literature')    
s.enrol('Mathematics')

s.show_courses()

关键说明

  • input(prompt)函数会在控制台显示提示文本,等待用户输入后返回字符串类型的内容。
  • 年龄字段需要用int()转换为整数,这里添加try-except块处理用户输入非数字的情况,避免程序直接崩溃。
  • 修正了原代码show_courses方法中姓名拼接的冗余空字符串,让姓名显示更合理。

内容的提问来源于stack exchange,提问作者VincentOfTheHighlands

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 12:05:31