Python中有很多的内建函数,zip()、enumerate()等
zip
- zip用于合并两个对象中的元素,合并的两个元素类型必须是一致的
- 如果长度不一致,采用长度小的
- 其参数必须是可迭代对象。
一个例题:通过zip函数实现字典中键、值位置的互换
dict1 = {"name": “Peter”, "lang": "python", "city": "shenzhen"}
方法一
:通过for遍历出字典中的key-value值,再互换
dict1 = {"name": "Peter", "lang": "python", "city": "shenzhen"}
dict2 = {}
for k,v in dict1.items(): # 先遍历所有的键值对
dict2[v]=k # 在新的字典中,将dict1的键作为值保存在dict2中
print(dict2)
{'Peter': 'name', 'python': 'lang', 'shenzhen': 'city'}
方法二:通过zip函数实现
dict(zip(dict1.values(),dict1.keys()))
image.png
enumerate()
- enumerate()是python的内置函数
- enumerate在字典上是
枚举、列举
的意思 - 对于一个可迭代的(iterable)/可遍历的对象(如列表、字符串),enumerate将其组成一个索引序列,利用它可以
同时获得索引和值
- enumerate多用于在for循环中得到计数
通过一个例子来了解枚举enumerate()函数的功能:取出给定列表中的索引和对应的元素
list1 = ["python", "java", "php", "Go"]
方法1:for遍历
list1 = ["python", "java", "php", "Go"]
for i in range(len(list1)):
print(str(i) + " is " + list1[i])
方法二:枚举enumerate
list1 = ["python", "java", "php", "Go"]
for i, language in enumerate(list1):
print(str(i) + " is " + list1[i])
0 is python
1 is java
2 is php
3 is Go
image.png
例子:将字符串中的java
替换成python
- 用
enumerate()
函数的结果中少了问号,不完美
image.png
用replace
方法解决,完美
raw = "Do you love java? java is a good language."
raw_string = raw.replace("java", "python")
print(raw_string)
网友评论