python--列表、字典、元组、集合对比
数据类型
# 计算机能处理的远不止数值,还可以处理文本、图形、音频、视频、网页等各种各样的数据,不同的数据,需要定义不同的数据类型。
# a:整形和浮点型(正数和负数)
# b:布尔类型(true,false)
# c: 字符串
# d:列表
# e: 字典
# f:元组
# g: 集合
#下文大纲:列表list 字典dict 元组tuple 集合set不同数据类型的定义、增加、删除、修改操作对比介绍,以及集合的并集、交集、差集、对称差集、自集、父集
#list 列表形式 有顺序
list=[]
list=[1,2,3]
list2=[
("name1", "y1"),
("name2", "y2")
]
#----------------------------------------------------------------------
#dict 字典形式 无序、key与value
dict={}
dict={"name1":"apple","name2":"egg"}
#----------------------------------------------------------------------
#tuple 元组形式 (tuple和list非常类似,但是tuple一旦初始化就不能修改,增加,删除,其嵌套list内容可变)
#定义空
tuple()
#定义一个元素必须加”,”
tuple=(1,)
#----------------------------------------------------------------------
#set 集合形式 1 无序 2 空集合,用set() 非空集合{} 3、集合主要作用去重复(例如将某一list 变为set形式后,list内重复元素保留唯一)
set1=set()
set2={1,2,3}
#----------------------------------增加------------------------------------
#列表增加
list=[1,2,3]
#list 增加一(尾部追加)
list.append("t5")
#list 增加二(指定位置插入)
list.insert(1,"t6")
#---------------------------------------------------------------------
#字典增加
dict={"name1":"apple","name2":"egg"}
dict["name3"]="orange"
#---------------------------------------------------------------------
#集合增加
set={"apple","egg"}
#set 增加一 (一个元素)
set.add("orange")
#set 增加二 (n个元素)
set.update(["test1","test2"]) #----------------------------------删除------------------------------------
#列表删除 list=[1,2,3,4,5,6,7]
#list 删除一 (指定元素) 如果元素不存在则报错
list.remove(2)
#list 删除二(指定索引 0删除第一位 空删除最后一位) 但是集合set.pop 不能指定0
list.pop()
#list 删除三(指定索引)
del list[1] #---------------------------------------------------------------------
#字典删除 dict={"name1":"apple","name2":"egg"}
#dict 删除一(指定key)
del dict["name1"] #---------------------------------------------------------------------
#集合删除
set={"apple","egg","egg1","egg2"}
#set 删除一 (删除任意元素,因其无序,不能指定索引,只能为空)
set.pop()
#set 删除二 (删除指定元素)如果元素不存在则报错
#set.remove("egg")
#set 删除三 (删除指定元素)如果元素不存在不报错
set.discard("egg1") #----------------------------------修改------------------------------------
#列表修改
list=[6,7,8]
#list 修改一(指定索引位置)
list[2]="t"
#---------------------------------------------------------------------
#字典修改
dict={"name1":"apple","name2":"egg"}
dict["name2"]="orange"
#---------------------------------------------------------------------
#set 修改没有发现 #----------------------------------输出------------------------------------
#列表输出
list=[6,7,8]
#list 方法一:直接输出名字
print(list)
#方法二:循环输出名字
for i in list:
print(i)
#---------------------------------------------------------------------
#字典输出
dict={"name1":"apple","name2":"egg"}
dict["name2"]="orange" #dict 方法一:直接输出名字
print(dict)
#方法二:循环输出名字 只输出值
for i in dict:
print(dict[i])
#---------------------------------------------------------------------
#集合输出
set={"apple","egg"}
set.update(["777","888"])
#dict 方法一:直接输出名字
print(set)
#方法二:循环输出名字
for i in set:
print(i)
#----------------------------------集合的关系形式------------------------------------
list1=[1,2,3,4,5]
list2=[4,5,6,7,8]
list3=[1,2,3] #将list转化为集合
list1_set=set(list1)
list2_set=set(list2)
list3_set=set(list3)
#交集
print(list1_set.intersection(list2_set))
print(list1_set&list2_set)
#>>{4, 5}
#并集
print(list1_set.union(list2_set))
print(list1_set | list2_set)
#>>{1, 2, 3, 4, 5, 6, 7, 8}
#差集 list1_set里面减去(与list2_set重复内容)
print(list1_set.difference(list2_set))
print(list1_set - list2_set)
#>>{1, 2, 3}
#对称差集 在list1_set或者list2_set中的元素,且去掉同时存在于两个集合中的元素
print(list1_set.symmetric_difference(list2_set))
print(list1_set ^ list2_set)
#>>{1, 2, 3, 6, 7, 8}
#子集--子在前 子是父的子集(true)
print(list3_set.issubset(list1_set))
#>>True
#父集--父在前 父是子的父集(true)
print(list1_set.issuperset(list3_set))
#>>True
python--列表、字典、元组、集合对比的更多相关文章
- python之字符串,列表,字典,元组,集合内置方法总结
目录 数字类型的内置方法 整型/浮点型 字符串类型的内置方法 列表的内置方法 字典的内置方法 元组的内置方法 集合类型内置方法 布尔类型 数据类型总结 数字类型的内置方法 整型/浮点型 加 + 减 - ...
- python 列表,字典,元组,字符串,QuerySet之间的相互转换
1. 列表转换成字典list1 = ['key1','key2','key3']list2 = ['value1','value2'] dict1 = zip(list1,list2) # dict( ...
- python_列表、元组、字典、集合对比
列表.元组.字典.集合 列表.元组.字典.集合对比 比较项 列表 元组 字典 集合 类型名称 list tuple dict set 定界符 [] () {} {} 是否可变 是 否 是 是 是否有序 ...
- Python列表、元组、字典和字符串的常用函数
Python列表.元组.字典和字符串的常用函数 一.列表方法 1.ls.extend(object) 向列表ls中插入object中的每个元素,object可以是字符串,元组和列表(字符串“abc”中 ...
- Python中字典和集合
Python中字典和集合 映射类型: 表示一个任意对象的集合,且可以通过另一个几乎是任意键值的集合进行索引 与序列不同,映射是无序的,通过键进行索引 任何不可变对象都可用作字典的键,如字符串.数字.元 ...
- (转)python 列表与元组的操作简介
python 列表与元组的操作简介 原文:https://www.cnblogs.com/QG-whz/p/4782809.html 阅读目录 列表 list函数 列表的基本操作 列表方法 元组 tu ...
- python列表与元组的用法
python列表与元组的用法 目录: 列表的用法: 1.增 append + extend 2.删 del remove 3.改 insert 4.查 index 5.反向 ...
- Python 列表、元组、字典及集合操作详解
一.列表 列表是Python中最基本的数据结构,是最常用的Python数据类型,列表的数据项不需要具有相同的类型 列表是一种有序的集合,可以随时添加和删除其中的元素 列表的索引从0开始 1.创建列表 ...
- <转>python列表、元组、集合、字典、json相互转换以及其他基础入门
列表元组转其他 # 列表转集合(去重) list1 = [6, 7, 7, 8, 8, 9] set(list1) # {6, 7, 8, 9} #两个列表转字典 list1 = ['key1','k ...
- python列表,元组,字典,集合的比较总结
这四个都是python中的序列,用于存放数据,他们区别总结如下: 列表list 元组tuple 字典dictionary 集合set 是否可变 可变 不可变 可变 可变 是否有序 有序 有序 无序 ...
随机推荐
- [转]Greenplum 执行计划之广播与重分布
关联数据在不同节点上,对于普通关系型数据库来说,是无法进行连接的.关联的数据需要通过网络流入到一个节点中进行计算,这样就需要发生数据迁移.数据迁移有广播和重分布两种.在GP中,每一个广播或重分布会产生 ...
- 【iCore4 双核心板_ARM】例程九:ADC实验——电源监控
实验原理: STM32内部集成三个12位ADC,iCore1S的所有电源经过电阻分压或者直接 接入STM32的ADC的输出通道内,输入电流经过高端电流检测芯片ZXCT1009F 输入到ADC的输入通道 ...
- Entlib DAAB映射枚举类型
1. IRowMapper<UserDto> addressMapper = MapBuilder<UserDto> .MapAllProperties() .Map(p =& ...
- Linux下rar 命令压缩和解压详解
例1:添加文件或目录到压缩档案中,使用a命令.例如把文件files1添加到abc.rar中,使用a或m命令,a命令把file1文件添加到abc.rar档案中保持原有的file1文件不变,m命令移动fi ...
- Sphinx 2.2.11-release reference manual
1. Introduction 1.1. About 1.2. Sphinx features 1.3. Where to get Sphinx 1.4. License 1.5. Credits 1 ...
- 蓝牙mesh介绍
了解一下关于蓝牙Mesh的知识. 蓝牙mesh网络使用,并且依赖于低功耗蓝牙(BLE).低功耗蓝牙技术是蓝牙mesh使用的无线通信协议栈. 蓝牙BR / EDR能够实现一台设备到另一台设备的连接和通信 ...
- python对象池模式
class QueueObject(): def __init__(self, queue, auto_get=False): self._queue = queue self.object = se ...
- android中volley通信框架简介
1. 什么是Volley? 在这之前,我们在程序中需要和网络通信的时候,大体使用的东西莫过于AsyncTaskLoader,HttpURLConnection,AsyncTask,HTTPClient ...
- Puppet主机、模块、类、资源、变量、参数、标签命名规范
Puppet命名规范: 约定说明: 小写字母:"a-z" 大写字母:"A-Z" 数字: "0-9" 句号: "." 下划 ...
- Linux设备驱动剖析之Input(一)
前言 以前在移植Qt到开发板上时只知道在配置文件中需要指定触摸屏的设备文件/dev/input/event0,仅此而已.直到一年半前突然想到用红外遥控器控制Tiny6410开发板上的Android系统 ...