python数组可以存储多少数据类型(2023年最新解答) | 您所在的位置:网站首页 › 不属于python支持的数据类型 › python数组可以存储多少数据类型(2023年最新解答) |
python数组可以存储多少数据类型(2023年最新解答)
Python 2023.02.01 46 0
导读:很多朋友问到关于python数组可以存储多少数据类型的相关问题,本文首席CTO笔记就来为大家做个详细解答,供大家参考,希望对大家有所帮助!一起来看看吧! 数组可以存储多种类型的数据数组内只能保存一种特定的数据类型。 元组内的值可以使任意类型,并不要求是相同类型 python支持的数据类型数字:数字类型是不可更改的对象。对变量改变的数字值就是生成/创建新的对象。Python支持多种数字类型:整型、布尔型、双精度浮点型、十进制浮点型、复数等。 字符串:字符串是不可变类型。就是说改变一个字符串的元素需要新建一个新的字符串,字符串是由独立的字符组成的,并且这些字符可以通过切片操作顺序地访问。Python里面通过在引号间包含字符的方式创建字符串,单引号和双引号的作用是相同的。Python实际上有三类字符串,通常意义的字符串和Unicode字符串实际上都是抽象类basestring的子类。 列表:像字符串类型一样,列表类型也是序列式的数据类型,字符串只能由字符组成,而且是不可变的,列表则是能保留任意数目的Python对象的灵活的容器。列表不仅可以包含Python的标准类型,可以用用户定义的对象作为自己的元素。列表可以包含不同类型的对象,要比C或者Python自己的数组类型都要灵活,因为数组类型所有的元素只能是一种类型。列表可以执行pop、sort、reverse等操作。 元组:元组类型在很多操作上跟列表一样,许多用在列表上的例子在元组上照样可以用。他们主要不同在于元组是不可变的,或者说是只读的,所以那些用于更新列表的操作,比如用切片操作来更新一部分元素的操作,就不能用于元组类型。 字典:字典是Python语言中唯一的映射类型。映射类型对象里哈希值(键,key) 和指向的对象(值。value) 是一对多的关系。一个字典对象是可变的,它是一个容器类型,能存储任意个数的Python对象,其中包括其他容器类型。字典类型和序列类型容器类的区别是存储和访问数据的方式不同。序列类型只用数字类型的键。映射类型可以用其他对象类型做键,一般最常用的是用字符串做键。字典常见的操作有:字典创建、字典赋值、字典中值的访问、字典更新、字典元素删除等操作。 集合。最早出现在Python2.3版本中,通过集合模块来创建,并通过immutableset类和set类进行访问。集合有两种不同的类型,可变集合和不可变集合。可变集合,可以添加和删除元素,不可变集合则不允许这样做。 python的数据类型有哪些?第一种:整数 python可以处理任意大小的整数,当然包含负整数,在python程序中,整数的表示方法和数学上的写法一模一样,比如:1,100,-8080,0,等。 计算机由于使用二进制,所以有时候用十六进制表示整数比较方便,十六进制用0x前缀和0-9,a-f表示,比如:0xff00。 第二种:浮点数 浮点数也就是小数,之所以称为浮点数,是因为按照科学计数法表示时,一个浮点数的小数点位置是可变的。浮点数可以用数学写法,比如1.23,3.15,-9.01等。但是对于很大或者很小的浮点数,就必须用科学计数法表示,把10用e替代,1.23x10^9就是1.23e9。 整数和浮点数在计算机内部存储的方法是不同的,整数运算永远是精确的,而浮点数运算则可能会有四舍五入的误差。 第三种:字符串 字符串是以“或”括起来的任意文本,比如'abc','xyz'等。请注意,“或”本身只是一种表示方式,不是字符串的一部分,因此,字符串'abc'只有a,b,c这3个字符。 第四个:布尔值 布尔值和布尔代数的表示完全一致,一个布尔值只有True、False两种值,要么是True,要么是False,在python中,可以直接用True、False表示布尔值,也可以通过布尔运算计算出来。 布尔值可以用and、or或not运算。 and运算是与运算,只有所有都为True,and运算结果才是True。 or运算是或运算,只要其中有一个为True,or运算结果就是True。 not运算是非运算,它是一个单目运算符,把True变成False,False变成True。 第五个:空值 空值是python里一个特殊的值,用None表示。None不能理解为0,因为0是有意义的,而None是一个特殊的空值。 此外,python还提供了列表、字典等多种数据类型,还允许创建自定义数据类型。 Python基本内置数据类型有哪些内置类型是指任何语言在设计初期定义的类型,如C语言中的int、double、char等。它也是在一种语言中最基本的类型,与编译器编译出的代码具有重大关系。值得一提的是,不同语言也拥有不同的内置类型, 但是所有内置类型的定义都与计算机的运算方式相关。 Python主要内置类型包括数值、序列、映射、类、实例和异常等。 数值类型:全局中只有一个(Python在解释器启动的时候,Python会用None类型生成一个None的对象),包括int类型、float类型、complex类型、bool类型。 迭代类型:在Python中,迭代类型可以使用循环来进行遍历。 序列类型:list(是可变序列,通常用于存放同类项目的集合)、tuple(是不可变序列,通常用于储存异构数据的多项集)、str(在Python中处理文本数据是使用str对象,也称为字符串。字符串是由Unicode码位构成的不可变序列。)、array、range(表示不可变的数字序列,通常用于在for循环中循环指定的次数)、bytes(由单个字节构成的不可变序列)、bytearray(bytes对象的可变对应物)、memoryvie(二进制序列) 映射类型:映射对象将具有hash的值映射到任意对象。映射是可变的对象。目前只有一种标准映射,即dictionary。字典的键几乎是任意值,也就是说,包含列表、字典或其他可变类型的值。 集合类型:作为一种无序的多项集,集合并不记录元素位置或插入顺序。相应地,集合不支持索引、切片或其他序列类的操作。目前Python有两种内置集合类型:set和frozenset。 set类型是可变的,其内容可以使用add()和remove()这样的方法来改变。由于是可变类型,它没有哈希值,且不能被用作字典的键或其他集合的元素。 frozenset类型是不可变并且具有哈希值,其内容在被创建后不能再改变,因此它可以被用作字典的键或其他集合的元素。 上下文管理类型:with语句 其他类型:模块、class、实例、函数、方法、代码、object对象、type对象、ellipsis(省略号)、notimplemented python常见数据类型一,python整数类型所表示的数据。 1,一般用以表示一类数值:所有正整数,0和负整数; 2,整型作为最常用的,频繁参与计算的数据类型,在python3.5中解释器会自动在内存中创建-5-3000之间的(包含5,不包含3000)整型对象,也就是说在该范围内,相等都是同一个已经创建好的整型对象。范围之外的即使相等也表示不同对象,该特性随python版本而改变,不要过于依赖。 3,bool型继承了int型,他是int的子类。 4,Python2中有长整型long,数值范围更大,在python3中已取消,所有整型统一由int表示。 5,参与所有数值计算,数学运算,科学计算。这也是所有编程语言都有的数据类型,因为编程语言生而需要模拟人的思维,借助数学方式,自动计算、更好的解决大量重复性的事务,因此数值类型、整数类型在编程语言中不可或缺。 6,支持二进制(0b\0B开头),十进制,八进制(0o\0O),十六进制(0x\0X) 二,python整数和浮点型支持常规的数值运算 整数和浮点数都可参与的运算:+ - * / %(取余) //(整除) **(幂) Python字符型: python字符型表示的数据: python3支持Unicode编码,由字母、数字和符号组成的形式就叫字符串,更接近或者相同与人们文字符号表示,因此在信息表示和传递时它也是最受认可的形式。在程序编写中也是非常常用,对应的可操作的方法也很多,很有意思。 字符串不可被修改,可以拼接等方法创建新字符串对象; 支持分片和下标操作;a[2:] 支持+拼接,*重复操作和成员关系in/not in; 表示形式:用单引号双引号包含起来的符号;a = str(‘sdfsdfsdf’) 或 r’\t\nabcd’ 原始字符,Bytes:b’abcd’; 6,字符串属于不可变数据类型,内部机制为了节省空间,相同的两个字符串表示相同的一个对象。a = ‘python’ b = ‘python’ a is b :True 二, 字符串支持的运算方法 1,capitalize() :首字母大写后边的字母小写 a = ‘abcd’ b = a.capitalize() b:Abcd 2,casefold() lower():字母转换为全小写 3,center(width,fillchar) :居中,width填补的长度;fillchar添加的字符 a = a.center(10,’_’) //’____abcd____’ 默认无fillchar填充空格 4,count(sub,star,end) :字母计数:sub要查询的字符 5,encode(encoding=’utf-8’,errors=’strict’) 设置编码 Errors :设置错误类型 6,endswith(suffix,star,end) : 若以suffix结尾返回True 7,expandtabs(8) :设置字符串中tab按键符的空格长度:’\tabcde’ 8,find(sub,star,end) : 返回指定范围内的字符串下标,未找到返回-1 9,index(sub,star,end) :返回指定范围字符串下标未找到抛出异常 10,isalnum() :判断字符串是否是字母或数字,或字母和数字组合 11,isalpha() :判断是否全是字母 12,isdecimal() :判断字符串是否是十进制数值 13,isdigit() :判断字符串是否是数字 14,isidentifier() :判断字符串中是否包含关键字 15,islower() :判断是否全小写 16,isnumeric() :判断全是数字 17,isspace() :判断是否是空格 18,isupper() 判断是否大写 19,istitle() :判断是否首字母大写 20,join(iterable) :把可迭代对象用字符串进行分割:a.join(‘123’) 21,ljust(width,fillchar);rjust() :左对齐右对齐 22, upper() :将字符串改为大写 23,split(sep=None,maxsplit=-1) :分割一个字符串,被选中字符在字符串中删除 ‘ab1cd1efg’.split(‘1’) :[‘ab’,’cd’,’efg’] 三,字符串格式化:按照规格输出字符串 format(*args,**kwargs) :args位置参数,kwargs关键字参数 ‘{0:.1f}’.format(123.468) :格式化参数,小数点后保留1位四舍五入 四,字符串操作符% 1,%s :格式化字符串 ‘abcd%sdef’%’dddd’ 2,%d:格式化整数 3,%o格式化无符号八进制 4,%x格式化无符号十六进制 5,%f格式化定点数 6, %e: 科学计数法格式化定点数 7,%g 根据值大小自动选%f,%e 8, %G E X :大写形式 五,格式化辅助命令: m.n :m最小总宽度,n小数点后位数:’%12.4f’%23456.789 六,转义字符:字符串前r避免转义:r’\nhello\thi’ \n:换行符 \t:横向制表符 \':' \":" \b:退格符 \r:回车 \v:纵向制表符 \f:换页符 \o,\x:八进制和十六进制 \0:空字符串 Python列表list 一,Python的列表list类型表示的数据: Python列表在cpython中被解释为长度可变的数组,用其他对象组成的连续数组。 列表中元素可以是相同或不同的数据类型; 当列表元素增加或删除时,列表对象自动进行扩展或收缩内存,保证元素之间没有缝隙,总是连续的。 Python中的列表是一个序列,也是一个容器类型 创建列表:a = []; b = [1,’python’]; c = list(); d = list((1,3,4,5)) 支持切片操作list[start,stop,step] python列表常用方法 1,append添加单个元素:list.append(object); //a.append(‘python’) 2,extend添加可迭代对象: list.extend(iterable); //a.extend(‘abcde’/[1,2,3]) 3,insert 插入元素:list.insert(index,object): 在index下标前插入元素//a.insert(2,’python’) 4,clear 清空所有元素:list.clear() //a.clear() 5,pop 删除并返回一个元素:list.pop(index) //默认删除默认一个元素 remove 删除指定元素:list.remove(v) ,v元素不存在报错 //a.remove(‘c’) 7,count 返回这个值在列表中数量:list.count(value) 8,copy 浅拷贝一个新列表:list.copy() 9,sort:排序list.sort(reverse=False/True) :默认升序 排序函数:sorted(list) 10,reverse: 原地翻转:list.reverse() 11,index(value,star,stop) :指定范围内该值下标:list.index(2,0,5) 列表元素访问: 下标访问:list[1] For循环遍历 通过下标修改元素:list[2 ] = ‘hello’ 列表常用运算符: 1,比较运算符:从第一个元素开始对比 2,+ 拼接一个新列表:l1+ l2 3, 重复操作符:* ,多个列表拼接 成员关系操作符:in/ not in 逻辑运算符:and not or 列表常用的排序方法: 冒泡排序;选择排序;快速排序;归并排序 Python元组tuple 一,Python元组tuple数据类型表示的数据: 元组是受到限制的、不可改变的列表; 可以是同构也可以是异构; 元组是序列类型、是可迭代对象,是容器类型。 元组的创建: a = (1,2,3)或a=1,2,3; b = tuple(); c = tuple(iterable) 支持切片操作tuple[start,stop,step] 二,python元组常用方法 1,index(value,star,stop) :指定范围内该值下标:tuple.index(2,0,5) 2,count(value) :值出现次数 三,支持运算: 1,比较运算符:从第一个元素开始对比 2,+ 拼接一个新元组:l1+ l2 3, 重复操作符:* ,多个元组拼接 4成员关系操作符:in/ not in 逻辑运算符:and not or 四,元组的访问 下标操作; For循环遍历访问。 Python字典类型 一,Python字典dict表示的数据:{key:value} 可根据关键字:键快速索引到对应的值; 字典是映射类型,键值对一一对应关系,不是序列; 字典元素是无序的; 字典是可迭代对象,是容器类型; 字典的创建:k = {}; k1={‘keyword’:object}; k2 = dict(); K3 = dict(mapping); dict=(iterable) 二,字典的访问: 通过key:k[‘key’] 修改key对应的值:K[‘key’] = value For循环遍历出来的是key; For循环键值对:for I in d.items(): For 循环enumerate: for k,v in enumerate(k1): In/not in 成员关系查询键不支持查值 三,字典常用方法 get(key,de):获取值:k.get(key,de) //若不存在则默认输出de pop(k,de):删除一个键值对,不存在输出de,未设置报错; keys() :返回字典所有key组成的序列:list(k.keys()) [1,2,3]; values():返回字典所有value组成的序列:list(k.values()) items():返回键值对组成的元组为元素的序列:(类set)list(k.items()) update(e):更新字典:e可是字典或两元素组成的单位元素序列:e=[(5,6),(7,8)]; k.update(e) clear():清空字典; popitem()删除某个键值对,若字典为空则报错 copy() :浅拷贝 10, fromkeys(iterable,value=None):从可迭代对象创建字典 {}.fromkeys([1,2,3]) -----{1:None,2:None,3:None} 11,setdefault(k,d=None) :若key不存在则生成一个键值对 k.setdefault(‘keyword’) Python 集合set 集合表示的数据: 多个元素的无序组合,集合是无序的,集合元素是唯一的; 字典的键是由集合实现的; 集合是可迭代对象 集合创建:s = {1,2}; s1 = set(); s2 = set(iterable) 集合元素的访问: For 循环将集合所有元素全部访问一遍,不重复 常用方法: add(object):s.add(‘hi’) 向集合添加一个元素 pop() :弹栈,集合为空则报错:删除任意一个元素; clear():清空集合,返回一个空集合对象; remove(object):删除一个元素,不存在和报错:s.remove(‘hi’) update(集合):更新另一个集合,元素不存在则不更新; copy() :浅拷贝 集合的运算: 交集:s1s2; 差集,补集:s1-s2; 并集:s1|s2; Issubset():判断是否是子集:s1.issubset(s2) s1是否s2的集合子集 Issuperset():判断是否是父集:s1.issuperset() 不可变集合: Frozenset():返回一个空的不可变集合对象 Frozenset(iterable): S = frozenset(iterable) Python序列类型共同特性 一,序列类型共同特性 python序列类型有:str字符串,list列表,tuple元组 都支持下标索引,切片操作; 下标都是从0开始,都可通过下标进行访问; 拥有相同的操作符 二,支持的函数: len(obj):返回对象长度; list(iterable):将可迭代对象转为列表; tuple(iterable):将可迭代对象转为元组; str(ojb):将任何对象转为字符串形式; max(iterable): python3中元素要是同类型,python2中元素可异构:max([‘a’,1]) min(iterable):和max类似; sum(iterable,star=0),求可迭代对象和,默认star为0,元素不能为字符串 sorted(iterable,key=None,reverse=False) s=[(‘a’,3),(‘b’,2),(‘c’,9)] sorted(s,key=lambda s:s[1]) //按照数字排序 reversed(sequence):翻转序列,返回迭代器 enumerate(iterable):返回enumerate对象,其元素都是一个元组(下标,值) zip(iter1,iter2): zip([1,2],[3,4]) ----[(1,3),(2,4)] 序列类型的切片操作: Slice: L[index]; 访问某个元素; L[1:4]; 区间 L[star:stop:step]; 设置步长取区间元素 python中的list和array的不同之处在Python中,list和array都可以根据索引来取其中的元素,但是list可以用append或者+来新增元素或者添加数组,而array不行。具体区别如下: 1、作用不同 list是处理一组有序项目的数据结构; array数组存储单一数据类型的多维数组; 2、内置数据类型 list是Python的内置数据类型; array数组需要导入标准库才行,不属于内置类型; 3、数据类型是否相同 list中的数据类不必相同的,即每个元素可以是不同的数据类型; array则是由Numpy封装,存放的元素都是相同的数据类型; 4、运算 列表list不可以进行数学四则运算; 数组array可以进行数学四则运算; 结语:以上就是首席CTO笔记为大家整理的关于python数组可以存储多少数据类型的全部内容了,感谢您花时间阅读本站内容,希望对您有所帮助,更多关于python数组可以存储多少数据类型的相关内容别忘了在本站进行查找喔。 6打赏海报本文转载自互联网,旨在分享有价值的内容,文章如有侵权请联系删除,部分文章如未署名作者来源请联系我们及时备注,感谢您的支持。 转载请注明本文地址:https://www.shouxicto.com/article/65800.html 上一篇:黑马Python就业班学多久(2023年最新分享) 下一篇:python正版软件多少钱(2023年最新整理) |
CopyRight 2018-2019 实验室设备网 版权所有 |