我可能会在Python中的hashmap
和Python中的map
/dict
之间混淆。
我认为爪哇hash
(K/V抽象)是一种相同的如在Python地图和字典之间的区别
dict
但那么,什么是map
数据类型呢?
它和散列图抽象是一样的抽象吗?如果是这样,那么它与字典有什么不同呢?
我仔细阅读了文档,但是我花了整个不同的范例:函数式编程。
我可能会在Python中的hashmap
和Python中的map
/dict
之间混淆。
我认为爪哇hash
(K/V抽象)是一种相同的如在Python地图和字典之间的区别
dict
但那么,什么是map
数据类型呢?
它和散列图抽象是一样的抽象吗?如果是这样,那么它与字典有什么不同呢?
我仔细阅读了文档,但是我花了整个不同的范例:函数式编程。
Map在Python中不是数据类型。它将函数应用于一系列值并返回结果。
>>> def f(x):
... return x**2
...
>>> map(f, range(5))
[0, 1, 4, 9, 16]
往往像一个简单的例子是“Python的”我们用列表内涵。
>>> [x**2 for x in range(5)]
[0, 1, 4, 9, 16]
你是对你的包含HashMap和类型的字典进行比较。
呀,地图是不是数据类型:-)看看http://docs.python.org/library/functions.html#map – 2012-04-08 20:51:56
@MaksymPolshcha感谢您的链接,我已经编辑它进入我的职务。 – 2012-04-08 20:53:00
对于Python 3,图*为*数据类型 - [见我的回答(https://stackoverflow.com/a/45087342/1048186) – 2017-07-13 17:27:17
python中没有地图数据类型。 map是一个将函数映射到序列的函数。
def increment(n):
return n+1
l = [1,2,3]
map(increment, l)
会给你一个新的列表[2,3,4]
应用到项目从所有iterables在Python 3,什么是itertools的IMAP返回映射一个可重复的数据类型,相当于在Python 2
要获得在Python 3相同的结果Nolan Royalty's的Python 2例如你可以这样写:
>>> def f(x):
... return x**2
...
>>> list(map(f, range(5)))
[0, 1, 4, 9, 16]
如果你没有在Python 3把它包在一个列表中,你会得到一个地图obj ECT:
>>> map(f, range(5))
... <map object at 0x000000000327E780>
所以有是地图对象,这是可迭代的,在Python 3
你的问题是有点不清楚,但为Python,这可能是你正在寻找的文件:HTTP ://docs.python.org/library/stdtypes。HTML#映射类型快译通 – 2012-04-08 20:50:37