python语言,到底有没有array类型?如何使用array类型?
发布于 作者:苏南大叔 来源:程序如此灵动~ 我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...
python
里面到底有没有array
类型呢?为什么ndarray
、list
、tuple
类型如何理解呢?苏南大叔仔细研究了一下,得到了本文的内容结论。如果您不同意我的观点,可以留言指正。
苏南大叔的“程序如此灵动”博客,记录苏南大叔的代码所学所想。测试环境:win10
,python@3.11.0
,numpy@1.24.2
,pandas@1.5.3
。本文探讨python
中到底有没有array
类型。
没有传统概念里面的array
python
没有传统概念里面的array
,大家传统概念里面的array
在python
里面叫做list
类型,tuple
类型是只读的。
a = list("苏南大叔")
b = ["苏","南","大","叔",666]
c = ("苏","南","大","叔",888)
自带个很难用的array.array
说python
中没有原生array
,这个是个假命题。是存在array
类型的,而且需要import array
才能使用。数据类型是:<class 'array.array'>
。
测试代码:
import array
a = array.array('l', [1, 2, 3, 4, 5])
print(a,type(a))
for x in a:
print(x)
a.append(6)
print(a)
a.insert(2, 99)
print(a)
a.remove(99)
print(a)
a.pop(2)
print(a)
输出:
array('l', [1, 2, 3, 4, 5]) <class 'array.array'>
1
2
3
4
5
array('l', [1, 2, 3, 4, 5, 6])
array('l', [1, 2, 99, 3, 4, 5, 6])
array('l', [1, 2, 3, 4, 5, 6])
array('l', [1, 2, 4, 5, 6])
这个array
有着数组常见的一切操作,比如:.append()
/.insert()
等等。但是,它的定义相比较而言,太难用了,和大家传统概念上的[]
差别巨大。比如:在数字中混合定义个字符串成员,都是报错的。
这里不深究它的使用方法,只是知道有这么回事罢了。平时应该用不到这个array.array
类型。
第三方提供加强版ndarray
和dataframe
作为数组的加强版数据类型,numpy
引申出了ndarray
类型,pandas
则引出了dataframe
类型。
参考文章:
import numpy as np
a = np.array( ["苏","南","大","叔",666] )
import pandas as pd
df = pd.DataFrame([
('虎子', 5, "dog"),
('老许', 3, "bird"),
('二赖子', 6, "fish"),
('老白', 8, "catty"),
('小黑', 10, "puppy"),
]
)
结束语
python
到底有没有array
类型呢?答案是:有。但是和大家想象的array
区别有些大。在python
中,和大家概念中的array
最接近的是list
类型。
如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。