引用:“事实上,在 Python 中,即使类型本身也是对象” 引用:“对象的类型是类型类型的对象”
据我了解:类型是程序员创建的对象的名称(例如 int、str、list ...),以便了解它是什么以及如何处理它。对象是存储在内存中的信息(即 a = 'abc')。
但是当我读到类型是对象的那一刻,我的逻辑就中断了,这要怎么理解呢?
引用:“事实上,在 Python 中,即使类型本身也是对象” 引用:“对象的类型是类型类型的对象”
据我了解:类型是程序员创建的对象的名称(例如 int、str、list ...),以便了解它是什么以及如何处理它。对象是存储在内存中的信息(即 a = 'abc')。
但是当我读到类型是对象的那一刻,我的逻辑就中断了,这要怎么理解呢?
这一切都取决于你的观点。例如,如果我们将程序视为一个对象(“存储在内存中”),那么它的类型为 .py、.c 等。但是,如果我们将 python 视为一种编程语言,那么这也是一个对象,因为它的源可以在 githab 上查看,并且它也有一个类型 - 解释。在编程中,你总是处于某种抽象层次,或者陷入机器命令,上帝保佑,然后上升到框架。
它只是意味着python中的类型是所谓的一等公民(一等公民)。第一类对象是可以作为参数传递给函数、作为函数结果返回或分配给变量的语言元素。简单地说,在 python 中,您可以像操作数字、字符串或其他对象一样操作类型。
通过比较 C 和 Python 等语言中的类型可能更容易理解。在 C 中,类型在编译后被擦除并且在运行时不存在。在 C 中,不能根据输入参数从函数返回类型,不能将类型存储在变量中供以后使用,也不能在运行时创建新类型。另一方面,在 Python 中,所有这些都是可能的:
变量也是存储在内存中的东西
例如,当我们使用一种语言时
C,通过变量的类型,我们告诉编译器要为这个变量保留多少内存。编译器在内存中分配空间并将这个值写入那里。
这里关于语言记忆中的类型及其大小
Chttps://www.tutorialspoint.com/cprogramming/c_data_types.htmпримитивный тип对此也有进一步的了解объект。我将举一个例子
JavaScript假设我们有一个变量:
基本上,变量
name是原始的,即变量name是一个字符串但它也是一个对象,有自己的方法
例如我们可以这样做:
在变量中,
nameUpper我们写入了变量的内置方法返回的值name顺便说一句,在这里阅读
https://ru.stackoverflow.com/questions/8337/Is-a-variable-object-in-OOP