元组、列表、数组的差别

概念

参考博客
元组:用于存储值固定不变的值表,如(1,[1,2],‘q’)
列表:用于存储其值可变的表,列表中的元素类型可不同,如[1,2,[1,2],‘m’,(1,2)]
数组:类型相同,数量有限的变量组合在一个集合中,如[1,2]

参考博客
进一步的了解:

  1. python现在只有元组(tuple)和列表(list),没有数组
  2. 元组一旦创建不可改变,例如:aa=tuple(1,2,3);不能追加(append)元素,弹出(pop)元素等
  3. 只能对元组中的元素进行索引aa[0],不能对其中的元组进行赋值aa[0]=8;
  4. 而列表都可以

使用方法

元组赋值、取值

参考博客

tup1=('h',1,[1,2]) #创建元组
tup2=()   #创建空元组
tup3=(50,)  #只有一个数据需要加个逗号

print(tup1[2])  #[1, 2]
print(tup1[1:3])  #(1, [1, 2])
print(tup1[2][1])  #2

元组组合

元组中的元素值是不允许修改的,但我们可以对元组进行连接组合

tup1=('h',1,[1,2])
tup2=()
tup3=(50,)

tup4=tup1+tup2+tup3
print(tup4)  #('h', 1, [1, 2], 50)

列表操作

参考博客

lst=[1,2,(1,2),"m"]  #赋值
lst1=range(7) #默认0-7之间的整数序列,步长为1 
lst2=range(2,6)  #2-6之间的
lst3=range(0,20,2)  #0-20之间,步长为2的
print(list(lst1)) #[0, 1, 2, 3, 4, 5, 6]
print(list(lst2))  #[2, 3, 4, 5]
print(list(lst3))  #[0, 2, 4, 6, 8, 10, 12, 14, 16, 18]
print(lst[-1])   #m
print(len(lst))  #4

其他方法

L.append(var)  #追加元素 L.insert(index,var) 
L.pop(var)   #返回var这个位置的数值,并从list中删除
L.remove(var)  #删除第一次出现的该元素 
L.count(var)  #该元素在列表中出现的个数 
L.index(var)  #该元素的位置,无则抛异常  
L.extend(list) #追加list,即合并list到L上 
L.sort()    #排序
 L.reverse()   #倒序 
 list 操作符:,+,*,关键字del a[1:]    #片段操作符,用于子list的提取 [1,2]+[3,4] #为[1,2,3,4]。
 同extend() [2]*4    #为[2,2,2,2] del L[1]  #删除指定下标的元素 del L[1:3] #删除指定下标范围的元素

列子:

lst=[1,2,3,7,2,3,3,2]   
lst.append(8)   #[1, 2, 3, 7, 2, 3, 3, 2, 8]
lst.insert(0,9)   #[9, 1, 2, 3, 7, 2, 3, 3, 2, 8]
lst.pop(0)    #[1, 2, 3, 7, 2, 3, 3, 2, 8]
lst.remove(2)  #[1, 3, 7, 2, 3, 3, 2, 8]
lst.count(3)  #3
lst.index(1)  #0
lst.extend([5,4,3])  #[1, 3, 7, 2, 3, 3, 2, 8, 5, 4, 3]
lst.sort()  #[1, 2, 2, 3, 3, 3, 3, 4, 5, 7, 8]
lst.reverse()  #[8, 7, 5, 4, 3, 3, 3, 3, 2, 2, 1]

列表的复制

L1 = L   #L1为L的别名,用C来说就是指针地址相同,对L1操作即对L操作。函数参数就是这样传递的 
L1 = L[:]  #L1为L的克隆,即另一个拷贝。
Python中的元组(Tuple)和数组有着不同的特点和用途。 元组是以圆括号“()”包围的数据集合,不同的元素以逗号“,”分隔。元组是不可变的,即一旦创建就不能修改。元组可以包含不同类型的元素,并且元素的顺序在创建时会保持不变。例如,T=(1,2,3)是一个包含整数元素的元组元组在多个元素之间的关系是有序的。 而在Python中并没有严格意义上的数组Python中最接近数组的数据类型是列表(List)。列表是一种动态数组,可以包含任意类型的元素,并且可以随意修改。列表使用方括号“[]”来表示。列表中的元素在内存中是连续存储的,可以通过索引来访问和修改元素。 此外,还有Numpy库中的数组和矩阵。Numpy数组是一种多维数组,可以包含相同类型的元素,并且在创建后大小是固定的。Numpy数组提供了许多强大的数学和科学计算函数和方法。Numpy矩阵是特殊的二维数组,用于数学运算和线性代数操作。Numpy库提供了丰富的函数和方法用于操作和处理数组和矩阵。 综上所述,元组是一种不可变的有序集合,而列表是一种可变的有序集合,Numpy数组和矩阵是用于科学计算和数学运算的数据结构。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [【PythonPython中的数组列表元组、Numpy数组、Numpy矩阵](https://download.youkuaiyun.com/download/weixin_38682790/13748464)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [python 列表元组数组](https://blog.youkuaiyun.com/weixin_44764524/article/details/112678820)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值