大话 数据入门
在电脑中任何数值都是一组比特(01序列)简单的组成,硬件无法区分存储器地址,脚本,字符整型。
类用户只看数据项的状态和行为,故类类似于抽象数据类型。在强类型语言中,声明某一类型变量,其实质也是实例化了某类型的变量。只不过这种该变量标识 ,是带方法抽象的实例,需要你赋值填充内容初始化,方可发挥自己的天赋。
变量
对变量有读写的概念固然重要,但对变量,准确的说是标识符
name
的第一次也非常重要。
第一次出现的类标识,第一次出现的函数标识... 都决定了标识抽象类型,后续与之相关的操作要向它出身类型靠齐
在赋值语句的左边第一次使用一个名称时,就会产生一个Python变量。
赋值语句提供了一种将名称与值关联起来的方法。该变量将持有对一块数据的引用而不是数据本身。
class A:
def __init__(self):
print('....A....')
a = A()
a.__init__()
A.__init__('ss')
def A():
print('......func....')
A()
a ='abc...str'
a = a+123
这很容易理解python变量为什么可以允许不同类型,它只个引用。回归本质,编译器在读到你写的变量值时,会断言出是何种类型的类型,然后进行该类型关联的方法操作。这也是为什么有时候,你在做字符串变量+数字拼接时,需要显式地将数字强转为字符串。
数据
数据本身只是一堆符号化的字符,它的意义在于语义化,在于对它的操作。与现实中事务相似,同类型数据通常具有相同的行为特征。面向对象的编程,通常定义一个类来描述数据的外观(状态)和数据能做什么(行为)。
数据与数据间的关系,谓之为数据结构。既然存在关系,肯定有对关系的增删改查,这些操作比之于类,则是方法。
类型
类型是编程语言的灵魂,它向电脑解释了如何对待比特。
类型总某种意义上来说,它是对数据关系操作的抽象。类型会方便关系操作,它会存在一些辅助记录关系的属性(元信息)。而通常意义上的初始化,是给操作集提供数据源。
python类型系统主要分为元类型,class类型,instance类型。
若用一棵树来类比,元类好比是根节点,class,function,list, tuple... 则是子节点,而instance则是叶子。
有些class是用来操作class的,对class进行扩展,访问,修改,组合(比如继承的实现super类),对行为的控制。
至于instance 则是编程中常用的对象实例,它是由通俗意义上的class生成。
本作品采用《CC 协议》,转载必须注明作者和本文链接