python的列表,字典,元组,集合的区别和各自使用方法

简介: 列表是处理一组有序的数据结构,可以读写,添加和删除,或者搜索列表里的元素。因为可以添加和删除,所以称为可变的数据类型,即这种类型是可以被改变的,并且列表可以嵌套。


list,tuple,set,dict区别总结图:

image.png

1.列表list []

列表是处理一组有序的数据结构,可以读写,添加和删除,或者搜索列表里的元素。因为可以添加和删除,所以称为可变的数据类型,即这种类型是可以被改变的,并且列表可以嵌套。

res = [1,2,'yihang']
#增加元素:extend和append
res.append(1)
res.extend('6')
#删除元素:del,pop,切片,remove
del res[1]
res.pop(1)#删除该位置上的元素,没有指定则是最后一个元素
res = res[:2]+res[3:]#切片
res.remove(2)#删除指定值的元素
#更改元素
res[1] = 100 #
#查元素
print(res[0])
print(res[1]) 

注意:如果想添加的一个元素是一个列表,那么append是将这个这个列表作为一个元素添加进来,而extend是将列中的元素一个一个添加进去

2.元组tuple()

元组跟列表非常相似,用()来表示,但是元组是不可变的,不能修改元组。元组可以嵌套。

>>> zoo=('wolf','elephant','penguin')
>>> zoo.count('penguin')
1
>>> zoo.index('penguin')
2
>>> zoo.append('pig')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'tuple' object has no attribute 'append'
>>> del zoo[0]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'tuple' object doesn't support item deletion

3.字典dict

字典是通过键值对的方式就数据存储下来,键必须是唯一的

键值对在字典中以这样的方式标记:d = {key1 : value1, key2 : value2 }。注意它们的键/值对用冒号分割,而各个对用逗号分割,所有这些都包括在花括号中。另外,记住字典中的键/值对是没有顺序的。如果你想要一个特定的顺 序,那么你应该在使用前自己对它们排序

dict1={'zhang':'张家辉','wang':'王宝强','li':'李冰冰','zhao':'赵薇'}
#字典的操作,添加,删除,打印
dict1['huang']='黄家驹'
del dict1['zhao']
for firstname,name in dict1.items():
    print firstname,name

结果:

li 李冰冰

wang 王宝强

huang 黄家驹

zhang 张家辉

定义dict.fromkeys(range(30),value) 可以形成一个双列的列表相当于java中的map,这个键值对列表存储子dict中

取键可以通过循环 for eachkey in dict.keys(): 把所有的键赋值到eachkey中去

取值可以通过循环 for eachkey in dict.values(): 把所有的值赋值到eachkey中去

取键值对站线程元组的形式 for eachItem in dict.item(): 把所有的键值对转化成元组的方式赋值给eachItem中

4.集合(set)

   特性:与字典类似,但只包含键,而没有对应的值,包含的数据不重复。

   创建:s = set(list or tuple or string)。重复的值在集合中只存在一个。如:

       列表list:s = set([1,2,3,3]) ->s = set([1,2,3])

       元组tuple:s = set((1,2,3)) ->s = set([1,2,3])

       字符串string:s = set(“abc”) ->s = set([“a”,“b”,“c”])


相关文章
|
5月前
|
安全 网络安全 文件存储
思科设备巡检命令Python脚本大集合
【10月更文挑战第18天】
168 1
思科设备巡检命令Python脚本大集合
|
1月前
|
安全 数据处理 索引
深入探讨 Python 列表与元组:操作技巧、性能特性与适用场景
Python 列表和元组是两种强大且常用的数据结构,各自具有独特的特性和适用场景。通过对它们的深入理解和熟练应用,可以显著提高编程效率和代码质量。无论是在数据处理、函数参数传递还是多线程环境中,合理选择和使用列表与元组都能够使得代码更加简洁、高效和安全。
48 9
|
4月前
|
存储 开发者 Python
Python 中的数据结构与其他编程语言数据结构的区别
不同编程语言都有其设计理念和应用场景,开发者需要根据具体需求和语言特点来选择合适的数据结构
134 55
|
5月前
|
存储 自然语言处理 数据处理
使用Python计算多个集合的交集详解
使用Python计算多个集合的交集详解
175 1
|
5月前
|
机器学习/深度学习 缓存 Linux
python环境学习:pip介绍,pip 和 conda的区别和联系。哪个更好使用?pip创建虚拟环境并解释venv模块,pip的常用命令,conda的常用命令。
本文介绍了Python的包管理工具pip和环境管理器conda的区别与联系。pip主要用于安装和管理Python包,而conda不仅管理Python包,还能管理其他语言的包,并提供强大的环境管理功能。文章还讨论了pip创建虚拟环境的方法,以及pip和conda的常用命令。作者推荐使用conda安装科学计算和数据分析包,而pip则用于安装无法通过conda获取的包。
365 0
|
5月前
|
存储 安全 Serverless
Python学习四:流程控制语句(if-else、while、for),高级数据类型(字符串、列表、元组、字典)的操作
这篇文章主要介绍了Python中的流程控制语句(包括if-else、while、for循环)和高级数据类型(字符串、列表、元组、字典)的操作。
83 0
|
5月前
|
存储 JSON 数据处理
分析、总结Python使用列表、元组、字典的场景
分析、总结Python使用列表、元组、字典的场景
83 0
|
5月前
|
存储 自然语言处理 Java
【Python】列表和元组
【Python】列表和元组
43 0
|
5月前
|
Python
Python操作:字符串--列表--元组--字典--运算符 (一)
Python操作:字符串--列表--元组--字典--运算符 (一)
41 0
|
5月前
|
Python
Python操作:字符串--列表--元组--字典--运算符 (二)
Python操作:字符串--列表--元组--字典--运算符 (二)
44 0