来自 编程应用 2019-09-04 19:50 的文章
当前位置: 六合联盟网 > 编程应用 > 正文

列表与字典的区别,字典互相转换的方法

那篇对应的是演练39 字典, 可爱的字典

#-*-coding:utf-8-*-

#encoding:utf-8
#列表与字典的区别
#列表
thing = ['name',1,'age','AD','sex']
print thing[1]
#print thing['name'] #会报错,列表只能通过整数去访问:TypeError: list indices must be integers, not str
stuff = {'name': 'tom','age': '28','1':'test'}
print stuff['name']
#print stuff[1] #会报错,关键字错误 KeyError: 1
#字典只能通过自己定义的索引去访问,而列表是通过系统给的索引去访问
#print stuff['tom'] #会报关键字错误KeyError: 'tom'
#通过上面,我们可以知道,(1)列表与字典定义时不一样,[]和{}的区别.(2)访问元素的方式不一样,列表是用系统提供好的整数0 1 2....去访问,而字典的索引是自己定义的 'a':'b' a是索引,b是对应的元素

#列表增加元素
thing.append('new1')
#也可以用insert方法插入
thing.insert(1,'new2')
#下面的方式是错误的 IndexError: list assignment index out of range
#thing[4] = 'new2'
for i in thing:
 print i 
#列表查询某个元素的索引位置
print thing.index('name')
#列表删除元素,参数是该元素,非元素索引
thing.remove('age')

#也可以用pop删除,删除的时候会返回被删除的值
print thing.pop() #不带参数默认删除最后一个元素
print thing.pop(0)
#还有关于排序的方法 reverse(反向排序) sort
print thing ,u'这个stuff.sort()排序前的结果'
thing.sort() 
print thing ,'这个stuff.sort()的结果'
#字典增加元素
stuff['job'] = 'IT'
#setdefault如果有这个索引就返回该索引的元素值,如果没有就插入
stuff.setdefault('new4','default')
#更新某个元素
stuff['job'] = 'IT1'
#for i in stuff:
# print i
print stuff['job']
#字典删除元素 pop方法,用法跟列表的一样
print stuff
print stuff.pop("job"),'这个stuff.pop()的结果'
print stuff
#获取某个值
print stuff.get("new4")
#返回整个字典
print stuff.items(),'这个stuff.items()的结果'
#values把列表的值打印出来
print stuff.values(),'这个stuff.values()的结果'

#1、字典
dict = {'name': 'Zara', 'age': 7, 'class': 'First'}

字典, 可爱的字典 #encoding:utf-8#列表与字典的区分#列表thing = ['name',1,'age','AD','sex']print thing[1]#print thing['name'] #会报错,列...

#字典转为字符串,再次回到:<type 'str'> {'age': 7, 'name': '扎尔a', 'class': 'First'}
print type(str(dict)), str(dict)

#字典能够转为元组,再次来到:('age', 'name', 'class')
print tuple(dict)
#字典能够转为元组,重回:(7, '扎尔a', 'First')
print tuple(dict.values())

#字典转为列表,重返:['age', 'name', 'class']
print list(dict)
#字典转为列表
print dict.values

#2、元组
tup=(1, 2, 3, 4, 5)

#元组转为字符串,重临:(1, 2, 3, 4, 5)
print tup.__str__()

#元组转为列表,再次回到:[1, 2, 3, 4, 5]
print list(tup)

#元组不得以转为字典

#3、列表
nums=[1, 3, 5, 7, 8, 13, 20];

#列表转为字符串,重临:[1, 3, 5, 7, 8, 13, 20]
print str(nums)

#列表转为元组,重返:(1, 3, 5, 7, 8, 13, 20)
print tuple(nums)

#列表不能够转为字典

#4、字符串

#字符串转为元组,重返:(1, 2, 3)
print tuple(eval("(1,2,3)"))
#字符串转为列表,再次来到:[1, 2, 3]
print list(eval("(1,2,3)"))
#字符串转为字典,重临:<type 'dict'>
print type(eval("{'name':'ljq', 'age':24}"))

本文由六合联盟网发布于编程应用,转载请注明出处:列表与字典的区别,字典互相转换的方法

关键词: