Python字典与切⽚(代码⽚段)
⼀、字典访问
dict = {"age":18,"weight":65} ("age"))
("height")) # 由于字典dict中没有height这个键,返回的是默认值None。
("height",0)) # 将默认值改为0,输出结果为0
和dict[key]的区别:
<(key)和dict[key]在key值存在的情况下,都能得到对应的键值。但是当使⽤dict[key]时,key必须要存在,否则会报错。但是[key]中的key可以不存在,因为get⽅法有⼀个默认的参数None,当key不存在的时候,返回None。
dic = {'剧情': 11, '犯罪': 10, '动作': 8, '爱情': 3, '喜剧': 2, '冒险': 2, '悬疑': 2, '惊悚': 2, '奇幻': 1}
#通过list将字典中的keys和values转化为列表
keys = list(dic.keys())
values = list(dic.values())
d = {'x': 1, 'y': 2, 'z': 3}
for the_key, the_value in d.items():
print(the_key, 'corresponds to', the_value)
x corresponds to 1
y corresponds to 2
z corresponds to 3
for i, (key, value) in enumerate(d.items(),start=100):
print(i, key, value)
100 x 1
101 y 2
102 z 3 
for key in d:
print(key)
x
y
z
print(list(d))
print(list(d.values()))
print(list(d.items()))
['x', 'y', 'z']
[1, 2, 3]
[('x', 1), ('y', 2), ('z', 3)]
⼆、字符串切⽚
str = 'abcd123'
print(str[:-2])  # 去掉后⾯2个字符
print(str[1:-2])  # 从第2个截取,去掉后⾯2个字符
print(str[0])  # 输出字符串第⼀个字符
print(str[2:5])  # 输出从第三个开始,取3个字符
print(str[2:])  # 输出从第三个开始的后的所有字符
print(str * 2)  # 输出字符串两次
结果:
abcd1
bcd1
a
cd1
cd123
abcd123abcd123
三、⽣成字典的三种⽅法
# ⽅法1
dic1 = { 'Author' : 'Python当打之年' , 'age' : 99 , 'sex' : '男' }
# ⽅法2
lst = [('Author', 'Python当打之年'), ('age', 99), ('sex', '男')]
dic2 = dict(lst)
# ⽅法3
dic3 = dict( Author = 'Python当打之年', age = 99, sex = '男')
# ⽅法4
list1 = ['Author', 'age', 'sex']
list2 = ['Python当打之年', 99, '男']
dic4 = dict(zip(list1, list2))
字典清空
dic1.clear()
# dic1 = {}
不管以前有什么数,clear后变空
从list创建dict
dict.fromkeys() 使⽤给定的多个键创建⼀个新字典,值默认都是 None,也可以传⼊⼀个参数作为默认的值。
list1 = ['Author', 'age', 'sex']
dic1 = dict.fromkeys(list1)
dic2 = dict.fromkeys(list1, 'Python当打之年')
# dic1 = {'Author': None, 'age': None, 'sex': None}
# dic2 = {'Author': 'Python当打之年', 'age': 'Python当打之年', 'sex': 'Python当打之
get()取值,可以设默认值
list1 = ['Author', 'age', 'sex']
list2 = ['Python当打之年', [18,99], '男']
dic1 = dict(zip(list1, list2))字符串截取不改变原字符串
Author = ('Author')
# Author = Python当打之年
phone = ('phone')
# phone = None
phone = ('phone','12345678')
# phone = 12345678
dict.update(dict1)  将字典dict1的键-值对更新到dict⾥,包含对应的键-值对,那么原键-值对会被覆盖,被更新的字典中不包含对应的键-值对,则添加该键-值对。
dic1 = {'Author': 'Python当打之年'}
dic2 = {'Author': '当打之年', 'phone': 12345678}
dic1.update(dic2)
print('dic1 = ',dic1)
# dic1 = {'Author': '当打之年', 'phone': 12345678}

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。