先看图片解释

(1)列表
什么是列表呢?我觉得列表就是我们日常生活中经常见到的清单。比如,统计过去一周我们买过的东西,把这些东西列出来,就是清单。由于我们买一种东西可能不止一次,所以清单中是允许有重复项的。如果我们扩大清单的范围,统计我们过去一周所有的花费情况,那么这也是一个清单,但这个清单里会有类别不同的项,比如我们买东西是一种花费,交水电费也是一种花费,这些项的类型是可以使不同的。python的列表个跟清单的道理是一样的,特点就是:可重复,类型可不同。类型不同也是跟数组最本质的区别了。python里的列表用“[]”表示:
lst = ['arwen',123]
print(lst[0])
print(st[1]) lst[0] = 'weiwen'

(2)元组

tup = ('arwen',123)
print(tup[0])
print(tup[1])

元组和列表在结构上没有什么区别,唯一的差异在于元组是只读的,不能修改。元组用“()”表示,如:

(3)集合就是我们数学学的集合,没有什么特殊的定义。集合最好的应用是去重。集合没有特殊的表示方法,而是通过一个set函数转换成集合,如:

lst = [ 1, 1, 0]

lst_set = set( lst )  #lst_set 为1 , 0

tup = (2, 2, 1)

tup_set = set( tup) # tup_set为2 , 1
for item in lst_set:
print(item)

(4)最后一个是字典。字典存储键值对数据,如:

lists = {1:'a',2:'b',3:'c'}

#字典最外面用大括号,每一组用冒号连起来,然后各组用逗号隔开。
#字典最大的价值是查询,通过键,查找值。

例子:

1、列表元组转其他

# 列表转集合(去重)
list1 = [6, 7, 7, 8, 8, 9]
set(list1)
# {6, 7, 8, 9} #两个列表转字典
list1 = ['key1','key2','key3']
list2 = ['','','']
dict(zip(list1,list2))
# {'key1': '1', 'key2': '2', 'key3': '3'} #嵌套列表转字典
list3 = [['key1','value1'],['key2','value2'],['key3','value3']]
dict(list3)
# {'key1': 'value1', 'key2': 'value2', 'key3': 'value3'} # 列表、元组转字符串
list2 = ['a', 'a', 'b']
''.join(list2)
# 'aab' tup1 = ('a', 'a', 'b')
''.join(tup1)
# 'aab

2、字典转其他

# 字典转换为字符串
dic1 = {'a':1,'b':2}
str = str(dic1)
print(str)
# "{'a': 1, 'b': 2}" # 字典key和value互转
dic2 = {'a': 1, 'b': 2, 'c': 3}
dic3 = {value:key for key, value in dic2.items()}
print(dic3)
# {1: 'a', 2: 'b', 3: 'c'}

3、字符串转其他

# 字符串转列表
s = 'aabbcc'
list(s)
# ['a', 'a', 'b', 'b', 'c', 'c'] # 字符串转元组
tuple(s)
# ('a', 'a', 'b', 'b', 'c', 'c') # 字符串转集合
set(s)
# {'a', 'b', 'c'} # 字符串转字典
dic2 = eval("{'name':'ljq', 'age':24}") # 切分字符串
a = 'a b c'
a.split(' ')
# ['a', 'b', 'c']

二、字典的分割、合并

#分割:
base = {'A':1, 'B':2, 'C':3, 'D':4, 'E':5}
subkey = ['C', 'E']
subdict=dict([(key, base[key]) for key in subkey])
print(subdict)
#{'C': 3, 'E': 5} #合并:
#方式一:
d1={'user':'root','pwd':''}
d2={'ip':'127.0.0.1','port':8080}
d3=dict(d1, **d2)
print(d3) #方式二:
d1={'user':'root','pwd':''}
d2={'ip':'127.0.0.1','port':8080}
d3={}
for k,v in d1.items():
d3[k] = v
for k,v in d2.items():
d3[k] = v
print(d3)

三、list分割、合并

a=[1,2,3,4,5,6]
b=['a','b','c','d']
print(a+b) a=[1,2,3,4,5,6]
b=['a','b','c','d']
a+=b
print(a) a=[1,2,3,4,5,6]
b=['a','b','c','d']
a.extend(b)
print(a) a=[1,2,3,4,5,6]
b=['a','b','c','d']
a[0:0]=b
print(a) li = ['a','b','c']
res1=';'.join(li)
res2=''.join(res1).split(';')
 
 
 
 
 

python 中列表 元组 字典 集合的区别的更多相关文章

  1. python中列表 元组 字典 集合的区别

    列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. (1)列表 什么是列表呢?我觉得列表就是我们日常生活中经常见到的清单.比如,统计 ...

  2. **python中列表 元组 字典 集合

    列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. 1.列表 列表是以方括号“[]”包围的数据集合,不同成员以“,”分隔. 列表的特 ...

  3. python的列表元组字典集合比较

    定义 方法 列表 可以包含不同类型的对象,可以增减元素,可以跟其他的列表结合或者把一个列表拆分,用[]来定义的 eg:aList=[123,'abc',4.56,['inner','list'],7- ...

  4. python3笔记十八:python列表元组字典集合文件操作

    一:学习内容 列表元组字典集合文件操作 二:列表元组字典集合文件操作 代码: import pickle  #数据持久性模块 #封装的方法def OptionData(data,path):    # ...

  5. python_列表——元组——字典——集合

    列表——元组——字典——集合: 列表: # 一:基本使用# 1.用途:存放多个值 # 定义方式:[]内以逗号为分隔多个元素,列表内元素无类型限制# l=['a','b','c'] #l=list([' ...

  6. Python学习-列表元组字典操作

    一.列表 列表是Python的基本数据类型之一,它是以 [] 括起来的,内部成员用逗号隔开.里面可以存放各种数据类型. # 例如: list2 = ['jason', 2, (1, 3), ['war ...

  7. python的学习笔记01_4基础数据类型列表 元组 字典 集合 其他其他(for,enumerate,range)

    列表 定义:[]内以逗号分隔,按照索引,存放各种数据类型,每个位置代表一个元素 特性: 1.可存放多个值 2.可修改指定索引位置对应的值,可变 3.按照从左到右的顺序定义列表元素,下标从0开始顺序访问 ...

  8. Python 列表&元组&字典&集合

    列表(list) 有序性,可存储任意类型的值 通过偏移存取,支持索引来读取元素,第一个索引为0 ,倒数第一个索引为-1 可变性 ,支持切片.合并.删除等操作 可通过索引来向指定位置插入元素 可通过po ...

  9. Python之列表&元组&字典

    今天学习了Python的基本数据类型,做以下笔记,以备查用. 一.列表 列表的常用方法: 1.append()方法 def append(self, p_object): # real signatu ...

随机推荐

  1. 1z0-062 题库解析4

    题目: Examine this parameter: NAME                     TYPE          VALUE ------------------------ -- ...

  2. python命名空间(namespace)

    命名空间: 每一个作用域变量存储的位置,或者解释为 存储作用域中变量的字典. 作用: 获取想查看某个作用域中的变量名.变量值. 使用方法: locals()  #当前命名空间 1. 效果图: 2. 代 ...

  3. 状态压缩 hdu #10

    You are playing CSGO. There are n Main Weapons and m Secondary Weapons in CSGO. You can only choose ...

  4. 发布到远程存储库时遇到错误: Git failed with a fatal error.

    正在推送 master发布到远程存储库时遇到错误: Git failed with a fatal error.Authentication failed for 'http://1212121xxx ...

  5. Webpack实战(三):作为前端你不得不懂的Webpack资源入口和出口的配置

    关于Webpack前两篇跟大家分享的主要是Webpack的一些基本的配置,今天开始我们详细了解一下有关Webpack的各种配置,今天主要跟大家分享的是Webpack的资源入口和资源出口的配置. 如果想 ...

  6. ii

    char a[10], b[10], c[10], d[10],e[10],f[10],g[10],h[10]; scanf("%s %s %s %s", a, b, c, d); ...

  7. Frameworks.Entity.Core 7

    1描述:实体基类,与业务和架构无关名称:EntityBase属性:public abstract 2描述:/ MongoDB的一些扩展方法名称:MongoExtensions修饰: public st ...

  8. BZOJ 1152 歌唱王国

    题目传送门 分析: 这道题很神仙,我们给出低配版解法和高配版解法2333 低配版: 首先知道这样一个公式...(证明去高配版) 当一个字符串S其中S [ 1 , i ] = S [ n - i + 1 ...

  9. selenium常见的元素定位方法

    一.获取元素 1)通过谷歌浏览器自动的工具访问百度首页,我们可以看到,页面上的元素都是由一行行的代码组成的,它们之间有层级地组织起来,每个元素之间都有不同的标签和值,我们可以通过这些不同的标签和值来找 ...

  10. 【WPF学习】第二十一章 特殊容器

    内容控件不仅包括基本控件,如标签.按钮以及工具提示:它们还包含特殊容器,这些容器可用于构造用户界面中比较大的部分区域. 首先介绍ScrollViewer控件,该控件直接继承自ContentContro ...