列表去重_Python 第五章:列表、元组与字典!(系列发布)

Advanced Management Technology 

     前沿管理技术       共享知识智慧


Python语言经典课程

4b0aa6d76566b3b963899862089de1e3.png

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

3166aede4bbadb04bc8c05f945b8ecea.png

  lst = ['arwen',123]
  print lst[0]
  print lst[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)最后一个是字典。 字典存储键值对数据,如:
 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 = ['1','2','3']
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(dic1)
# "{'a': 1, 'b': 2}"

# 字典key和value互转
dic2 = {'a': 1, 'b': 2, 'c': 3}
{value:key for key, value in a_dict.items()}
# {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':'1234'}
d2={'ip':'127.0.0.1','port':8080}
d3=dict(d1, **d2)
print(d3)

方式二:
d1={'user':'root','pwd':'1234'}
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(';')

b0f32c31b82319f01650d8d52b68bf30.png

08fdd6657c44291eb36faf32471eeb86.png

d9268294c873cbcebd03046dcf88d17a.png

6632b18b73383bdf56cffb82a3bb251e.png

bfb31ae2115be977cd8705ddd86716f1.png

920054c61e1e20e3762c7a8097e7d49f.png

3e2fae6ba037bc39349f08278ae204ac.png

706be7c17a0d854333014fa3ed2caa9f.png

29e1165d04eba1e59c139da9a9b3cc7e.png

25f421d3c605688812d3cb6c67317bbb.png

cd184851ffeba8ea765923f9d2d98fc4.png

a975a4e38b0db6d17e299be2e4c9a020.png

1cdcb845b9f2bc76f5ea8185eb34b0f2.png

e35e350e7c7f942ef11585d38518762d.png

3f429ade8f7a29adc5b69c747ecbd6ef.png

6b86e1b8104c1b834461a76334899d3e.png

6a6d5866cadd27300502d8bf87c268cf.png

dd50ffffd605f20f457bc75ea45f31b1.png

d85cf90e450f83609c0fafbea4b342d2.png

b3d71393b91e269759788e9b09f0272f.png

12c3c0aebe0dc8cce372ff8224807c96.png

46626c8cca5f3bcfdfd40e36496f08a9.png

c37fb4fc310eed9e150c4c055feee929.png

d3fbc1e500b580297aa697e9d564ac2a.png

2849b4b114961f679b5a3d2a0e8ac5c9.png

f71b11850ce5780eb01983cce2148a67.png

dfccc8f1a4217c52bbf3589b4aa655d2.png

f796b4376e6ddc91432081393d0f3d82.png

c8c7fd32f778b5e3eac2bed22f042408.png

f526eb6e5a0e6a60d9f9ba8fa7aef6ca.png

2de508a5136353e7932c2c63b661270b.png

25c837e06165c43ec5a2c5f20efd64db.png

0a3c18842a3b2273673fb856be7acca6.png

e8dbf63e40faaa0ab019330d8cfede4b.png

a968b1b224bc3ff7c6f5dfa94c938928.png

43e460832166ba7cfdf951100ac23c9a.png

f70d61ed700b0f1e97dae0b9f6319e5d.png

88bcb2cd005b0c6e2bb61bbb4c06ccf0.png

2b20e9b83f8295a60c2b97ed3541b74c.png

20729580c69e2dcc850e96a893ee44c0.png

ae282f17dee3d48e9d6740a4e3bbac00.png

f2c0224114c298070ddfdb1a63a9a792.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值