如何根据用户输入打印Python对象的对应数据
按姓名查询人员信息解决方案
完整实现代码
userInput = input("Enter Name: ") class Person: def __init__(self, name, age, job): self.name = name self.age = age self.job = job People = [ Person('Josh',23,'Consultant'), Person('Maya',25,'Accountant'), Person('Dan',32,'Social Worker'), Person('Keon',38,'Biomaterials Developer'), Person('Michelle',28,'Surgeon'), Person('Joey',34,'Lawyer') ] # 遍历查找匹配人员 for person in People: if person.name.lower() == userInput.lower(): print(f"姓名: {person.name}") print(f"年龄: {person.age}") print(f"工作: {person.job}") break else: print(f"未找到名为「{userInput}」的人员信息")
关键说明
- 类名调整为
Person,符合Python PEP8命名规范(类名采用大驼峰格式) - 加入大小写不敏感匹配逻辑,用户输入
josh或Josh都能匹配到目标人员 - 找到匹配项后立即终止循环,优化执行效率
- 增加未找到匹配项的提示,提升程序容错性
内容的提问来源于stack exchange,提问作者ske
相关产品推荐
相关产品推荐

