gpt4 book ai didi

python - map 是如何工作的

转载 作者:太空宇宙 更新时间:2023-11-03 14:25:07 25 4
gpt4 key购买 nike

我有一行代码是:

D = {'h' : 'hh' , 'e' : 'ee'}
str = 'hello'
data = ''.join(map(lambda x:D.get(x,x),str))
print data

这给出了一个输出 -> hheello

我想了解 map 函数在这里是如何工作的。 map 是否取每个字符将字符串与字典键进行比较,返回对应的键值?

这里的每个字符如何处理?没有迭代。有什么好的例子可以更好地理解这一点吗?

最佳答案

没有循环,因为 map 需要一个“可迭代的”(即您可以对其进行迭代的对象)并且循环本身。

map,如果 native 不存在,可以实现为:

def map(f, it):
return [f(x) for x in it]

或者,更明确地说,如:

def map(f, it):
result = []
for x in it:
result.append(f(x))
return result

在 Python 中,字符串是可迭代的,并且在迭代时循环遍历字符串中的字符。例如

map(ord, "hello")

返回

[104, 101, 108, 108, 111]

因为那些是字符串中字符的字符代码。

关于python - map 是如何工作的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21972106/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com