繁体   English   中英

python 如何跟踪可变数据类型?

[英]How does python keep track of variable data types?

我最熟悉的是Java,正在学习Python。 我一直在 Python 中使用 OOP 并且有点困惑它如何跟踪数据类型。 我感到困惑的是下图中的 get_average_grade() function。 在 for 循环中,Python 如何知道学生是学生类型的 object? 注意:列表 self.students 在班级的init中被分配为一个空列表。

与问题相关的图片

Python 变量实际上没有数据类型。 Python 变量只是对 object 的引用(或指针)的符号名称。 object 有一个值(例如 23 或“cat”)和一个类型(例如strintStudent )。 名称可以在一秒钟与一个int关联,然后与一个Student关联。

您可以在任何变量上调用get_grade() 如果该变量没有get_grade()方法,则结果是 AttributeError 异常。

所有 Python 程序员都应该阅读的一些有用的背景知识:

Python 足够聪明,可以在分配变量时知道您希望变量是什么类型。 看一下这个。

student = 'Hi Mom!'
print (student)

student = 7
print (student)

student = [1, 2, 3]
print (student)

任何时候'student'都可以是一个字符串,integer,列表,字典等等……

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM