print('学号\t\t姓名\t\t电话\t\tQQ号码\t\t电子邮箱')
for stu in students:
print(f"{stu['stu_number']}\t\t{stu['name']}\t\t{stu['tele_number']}\t\t{stu['qq_number']\t\t{stu['email']}")
为什么不可以运行
引用 皆我百晓生 小程序回复内容作答:
您的代码存在缩进错误和语法错误。
首先,for stu in students:
循环后面没有正确缩进的代码语句。
其次,另一个问题是第6行的 stu['qq_number']
末尾缺少一个右括号。
以下是修复后的代码示例:
students = [
{"stu_number": "001", "name": "Alice", "tele_number": "1234567890", "qq_number": "123456789", "email": "alice@example.com"},
{"stu_number": "002", "name": "Bob", "tele_number": "0987654321", "qq_number": "987654321", "email": "bob@example.com"},
{"stu_number": "003", "name": "Charlie", "tele_number": "4567891230", "qq_number": "456789123", "email": "charlie@example.com"}
]
print('学号\t\t姓名\t\t电话\t\tQQ号码\t\t电子邮箱')
for stu in students:
print(f"{stu['stu_number']}\t\t{stu['name']}\t\t{stu['tele_number']}\t\t{stu['qq_number']}\t\t{stu['email']}")
请确保在循环内部的代码语句正确缩进,并且修复第6行的语法错误。
【相关推荐】
\1. 定义:
类外提供必要的功能,隐藏实现的细节。
\2. 优势:
简化编程,使用者不必了解具体的实现细节,只需要调用对外提供的功能。
\3. 私有成员:
(1) 作用:无需向类外提供的成员,可以通过私有化进行屏蔽。
(2) 做法:命名使用双下划线开头。
(3) 本质:障眼法,实际也可以访问。
私有成员的名称被修改为:__ 类名 __ 成员名,可以通过 __ dict __ 属性或dir函数查看。
\4. 属性@property:
公开的实例变量,缺少逻辑验证。私有的实例变量与两个公开的方法相结合,又使调用者的操作略显复杂。而属性可以将两个方法的使用方式像操作变量一样方便。
(1) 定义:
@property
def 属性名(self):
return self.__属性名
@属性名.setter
def 属性名(self, value):
self.__属性名= value
(2) 调用:
对象.属性名 = 数据
变量 = 对象.属性名
(3) 说明:
通常两个公开的属性,保护一个私有的变量。
@property 负责读取,@属性名.setter 负责写入
只写:属性名= property(None, 写入方法名)