我正在阅读python的语言参考,并在第3章“数据模型”中说每个对象都有一个标识,类型和值。我明白的身份。我猜的类型意味着__class__
引用的对象(如果错误,请纠正)。我猜这个值意味着对象的属性,换句话说就是对象名字空间中的名字所引用的对象。它是否正确 ?价值意味着什么关于python对象?
4
A
回答
3
是的,这是正确的。大多数情况下,只要将价值看作是对象本身。
您也可以使用“状态”一词来描述对象值;对于可变对象,值可以是更改,但通常而言,它的类型和标识不会更改。
一些例子:
2048
为int
具有整数值2048int
是一个不可变型,因此该值永远不会改变。您通常使用不同的值创建同一类型的对象新的;2048 + 1
会生成一个新的标识为的值为2049的对象。[42]
是一个带有对另一个对象的单一引用的列表。您可以更改内容,更改列表值。但身份和类型不会改变。- 对于Python类的实例,
__class__
是可写的,可让您动态更改类型。这很少需要,但存在选项。
+0
但是如果我写a = C(),其中C是某个类,然后是.__ class__ = B,其中B是另一个类。那我有没有改变过?这与你的陈述有关,即类型和身份不会改变。 –
+0
@АлександърГьорев:yup,但仅适用于Python类;你不能对'int'或'str'或'list'做同样的事情。 –
相关问题
- 1. GL_UNSIGNED_BYTE对于glTexImage2D意味着什么?
- 2. 开关-r对于Firebird gbak工具意味着什么?
- 3. JAVA:对于ArrayIndexOutOfBoundsException异常,返回值意味着什么?
- 4. “**”在Python中意味着什么?
- 5. 会话在Python中意味着什么?
- 6. **在python中意味着什么
- 7. 什么?意味着在注册表值?
- 8. '#if _LFS64_LARGEFILE-0'对CPP意味着什么?
- 9. 这对循环意味着什么?
- 10. PREEMPTIVE_XE_DISPATCHER这意味着什么?
- 11. Field.Index.NOT_ANALYZED_NO_NORMS意味着什么
- 12. $这意味着什么PHP?
- 13. 什么===在PHP意味着
- 14. MYSQLI_NUM意味着什么?
- 15. * | *这意味着什么CSS?
- 16. 溢出意味着什么?
- 17. HttpServletResponse.SC_BAD_REQUEST意味着什么?
- 18. 什么呢JDBC:HSQLDB:hsqlTempFiles意味着
- 19. 奎因意味着什么?
- 20. “N”对R中的igraph对象意味着什么?
- 21. 在AngularJS中结尾意味着什么double意味着
- 22. 〜=是什么。在Stata意味着什么?
- 23. 关于这段代码意味着什么的C#问题
- 24. 在Python中,非等维的插值意味着什么?
- 25. 这对我老板的python代码意味着什么?
- 26. 本地相对文件名在Python中意味着什么?
- 27. 是什么对象?.Property意味着在C#
- 28. 直接将[]添加到对象意味着什么?
- 29. 这些数字在PDO对象中意味着什么?
- 30. 在JQuery中,“连接”一个对象意味着什么?
是的,这是正确的 – Wli