python支持的数据类型

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python支持的数据类型相关的知识,希望对你有一定的参考价值。

数字:数字类型是不可更改的对象。对变量改变的数字值就是生成/创建新的对象。Python支持多种数字类型:整型、布尔型、双精度浮点型、十进制浮点型、复数等。
字符串:字符串是不可变类型。就是说改变一个字符串的元素需要新建一个新的字符串,字符串是由独立的字符组成的,并且这些字符可以通过切片操作顺序地访问。Python里面通过在引号间包含字符的方式创建字符串,单引号和双引号的作用是相同的。Python实际上有三类字符串,通常意义的字符串和Unicode字符串实际上都是抽象类basestring的子类。
列表:像字符串类型一样,列表类型也是序列式的数据类型,字符串只能由字符组成,而且是不可变的,列表则是能保留任意数目的Python对象的灵活的容器。列表不仅可以包含Python的标准类型,可以用用户定义的对象作为自己的元素。列表可以包含不同类型的对象,要比C或者Python自己的数组类型都要灵活,因为数组类型所有的元素只能是一种类型。列表可以执行pop、sort、reverse等操作。
元组:元组类型在很多操作上跟列表一样,许多用在列表上的例子在元组上照样可以用。他们主要不同在于元组是不可变的,或者说是只读的,所以那些用于更新列表的操作,比如用切片操作来更新一部分元素的操作,就不能用于元组类型。
字典:字典是Python语言中唯一的映射类型。映射类型对象里哈希值(键,key) 和指向的对象(值。value)
是一对多的关系。一个字典对象是可变的,它是一个容器类型,能存储任意个数的Python对象,其中包括其他容器类型。字典类型和序列类型容器类的区别是存储和访问数据的方式不同。序列类型只用数字类型的键。映射类型可以用其他对象类型做键,一般最常用的是用字符串做键。字典常见的操作有:字典创建、字典赋值、字典中值的访问、字典更新、字典元素删除等操作。
集合。最早出现在Python2.3版本中,通过集合模块来创建,并通过immutableset类和set类进行访问。集合有两种不同的类型,可变集合和不可变集合。可变集合,可以添加和删除元素,不可变集合则不允许这样做。
参考技术A 一、整数
Python可以处理任意大小的整数,当然包括负整数,在Python程序中,整数的表示方法和数学上的写法一模一样,例如:1,100,-8080,0,等等。
计算机由于使用二进制,所以,有时候用十六进制表示整数比较方便,十六进制用0x前缀和0-9,a-f表示,例如:0xff00,0xa5b4c3d2,等等。
2
二、浮点数
浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的,比如,1.23x10^9和12.3x10^8是相等的。浮点数可以用数学写法,如1.23,3.14,-9.01,等等。但是对于很大或很小的浮点数,就必须用科学计数法表示,把10用e替代,1.23x10^9就是1.23e9,或者12.3e8,0.000012可以写成1.2e-5,等等。
整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的(除法难道也是精确的?是的!),而浮点数运算则可能会有四舍五入的误差。
3
三、字符串
字符串是以''或""括起来的任意文本,比如'abc',"xyz"等等。请注意,''或""本身只是一种表示方式,不是字符串的一部分,因此,字符串'abc'只有a,b,c这3个字符。
4
四、布尔值
布尔值和布尔代数的表示完全一致,一个布尔值只有True、False两种值,要么是True,要么是False,在Python中,可以直接用True、False表示布尔值(请注意大小写),也可以通过布尔运算计算出来。
布尔值可以用and、or和not运算。
and运算是与运算,只有所有都为 True,and运算结果才是 True。
or运算是或运算,只要其中有一个为 True,or 运算结果就是 True。
not运算是非运算,它是一个单目运算符,把 True 变成 False,False 变成 True。
5
五、空值
空值是Python里一个特殊的值,用None表示。None不能理解为0,因为0是有意义的,而None是一个特殊的空值。
参考技术B Python常见的数据类型有5种,分别是整型,浮点型,字符串,列表,布尔型 参考技术C

Python3 的六个标准数据类型中:

    不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);

    可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。

python的数据类型

程序=操作+数据,可以描述任何imperative languages的基本要素

理解一门编程语言所支持的数据类型,是我快速入门的一种方法

在这里单独拿出python的数据类型,待日后快速查找

0x00 数

  明显的,数可以是最基本的数据类型,其他任何的类型都可以从数这种类型上衍生出来

  和多数语言一样,python支持两种数的表示,整数和浮点

  整数

    python通常用字面量创建一个整数数据,支持多种字面量

    二进制 0b011 #3 0b111 #7

    八进制 0o7 #7 0o10 #8 注意是数字零和字母o

    十六进制 0x0ff 0x21

  浮点

    除了 1.2这种常见表示 还支持科学计数法 1.2e9 1.2e-5

0x01 字符串

  一些语言,如C语言,区分了字符和字符串,但是在python只有字符串这种类型

  字符串是以单引号或双引号"括起来的任意文本,引号并不是字符串的一部分,

  只是单纯的用来告诉解释器,这是数据,而不是程序逻辑。至于转义字符,一样一样的

0x02 布尔值

  True 和 False

  开头字母是大写!

0x03 None

  开头字母也是大写!我就是一个空值而已~~

0x04 list

   list其实类似于数组,下标从0开始,但各个元素的类型不必相同,你可以这样操作它

      oops=[123,‘imissyou‘,True] #创建list

      oops[1] #访问第二个元素 imissyou

      oops[1]=100 #修改值

    len(oops)可以返回list的长度,超出这个长度减一的下标,会产生 list index out of range 错误

    这意味着我们不能想JS一样,用方括号的方式动态延长数组,不过可以调用append来扩展数组

    oops.append(‘new‘)

0x05 tuple

      tuple其实也是list,只不过tuple是只读的,你创建了一个tuple以后,就不能改变tuple的值

      abs=(123,‘wee‘,True) #python以圆括号来创建一个tuple

      abs=(123,) #创建只有一个元素的tuple必须加一个逗号 这是用于清除圆括号改变优先级的歧义

0x06 dict

  dict dictionary的缩写,以key:value,键-值对的形式存储数据,而不是数字下标

    key和value以:号分割,每个键值对以逗号分隔

    #python用花括号来创建一个简单的dict

    abs={‘name‘:‘jack‘,‘age‘:10}

    #访问和赋值

    abs[‘name‘] #jack

    abs[‘name‘]=‘mike‘

    如果dict里面没有你输入的key,那么就会一个KeyError错误

0x07 set

  set即你高中数学课本上的集合,确定,唯一,无序,你可以这样创建它

  s=set([1,‘wowo‘,3]) #调用set函数,传入一个list

  这样一个set就被创建出来,不过set不能被访问单个元素,set只能以整体出现

  你可以对它进行交集并集等运算

以上是关于python支持的数据类型的主要内容,如果未能解决你的问题,请参考以下文章

python的数据类型

Python Redis 五大数据类型

Python 数据类型都有哪些?

Mysql支持的数据类型都有哪些

python数据类型有哪些

python的数据类型