数据类型是编程语言中的很重要的一个组成部分,我所知道的有数据类型的好处有:在内存中存放的格式知道,规定了有哪几种可用的操作。
我的埋点:为什么要有数据类型
那么python中的数据类型有哪几种呢?
对象类型 | 例子 常量/创建 |
数字 | 1234,3.1343,3+4j,Decimal,Fraction |
字符串 | 'spam',"guido's",b'axolc' |
列表 | [1, [2, 'three'], 4] |
字典 | {'food':'spam', 'taste':'yum'} |
元组 | (1, 'spam', 4, 'U') |
文件 | myfile=open('eggs', 'r') |
集合 | set('abc'), {'a', 'b', 'c'} |
其他类型 | 类型、None、布尔型 |
编程单元 | 函数、模块、类 |
与实现相关的类型 | 编译代码堆栈维护 |
除此之外还有和正则表达式相关的模式变量、在网络编程时的套接字对象。
这里可以稍微解读一下:
数字:这个就不用说了,几乎每个编程语言中都会有数字,这是最基本的,似乎python的数字类型还挺多的,有复数和分数了;
字符串: 还好有字符串类型,以我的一丢丢编程经验来看,没有字符串类型的语言真的好难受,因为很多编程场景都会涉及到字符串的处理我估计有20%~30%吧,我瞎估的;
文件:这个我感觉还好,没啥特殊的,每个语言对文件这种类型都会进行封装;
至于列表、字典、元祖、集合这种类型的数据相当于把数据结构中常用的数组、链表、映射都已经给你封装成工具了,就像java里面的List,Map,Set,而且这种工具都应该是经过优化了的,比起你再去自己搞数据结构一来是有现成的工具用,二来是有保障,三来是系统提供的一般来说速度要比你快;不好的地方是,你的花时间去学它的操作,然后就不是不能自己随心所欲的玩;
其他类型:类型,java中有个Class对象,不知道是不是类似的;None,请问是NULL么;布尔型就是true or false
编程单元:大的程序往往都会拆分成不同的组成,函数、模块、类就是python的单元,就像jar包是java的单元一样;
与实现相关的类型:smjbwye,不懂
好了,python已经学了一半了,说了大半天反正我暂时弄懂了一点