相关疑难解决方法(0)

570
推荐指数
5
解决办法
24万
查看次数

获取map()以返回Python 3.x中的列表

我正在尝试将列表映射到十六进制,然后在其他地方使用列表.在python 2.6中,这很简单:

答: Python 2.6:

>>> map(chr, [66, 53, 0, 94])
['B', '5', '\x00', '^']
Run Code Online (Sandbox Code Playgroud)

但是,在Python 3.1中,上面返回了一个map对象.

B: Python 3.1:

>>> map(chr, [66, 53, 0, 94])
<map object at 0x00AF5570>
Run Code Online (Sandbox Code Playgroud)

如何在Python 3.x上检索映射列表(如上面的A中所示)?

或者,有更好的方法吗?我的初始列表对象有大约45个项目,id喜欢将它们转换为十六进制.

python list python-3.x map-function

480
推荐指数
5
解决办法
37万
查看次数

当它在地图中时,打印不会打印,Python

primes = [2,3,5,7..] (prime numbers)
map(lambda x:print(x),primes)
Run Code Online (Sandbox Code Playgroud)

它不打印任何东西.这是为什么?我试过了

sys.stdout.write(x)
Run Code Online (Sandbox Code Playgroud)

也是,但也不起作用.

dictionary python-3.x

51
推荐指数
2
解决办法
4万
查看次数

为什么map(print,a_list)不起作用?

对于正常功能,map效果很好:

def increment(n):
    return n+1
l = [1, 2, 3, 4, 5]
l = map(increment, l)
print l
>>> [2, 3, 4, 5, 6]
Run Code Online (Sandbox Code Playgroud)

但是,如果它print被放入map函数内:

l = [1, 2, 3, 4, 5]
l = map(print, l)
print l
Run Code Online (Sandbox Code Playgroud)

python会抱怨:

l = map(print, l)
            ^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)

有什么print特别的?不print(x)也是一个有效的函数调用?上面的代码在python 2.7下测试.

python python-2.7 map-function

17
推荐指数
2
解决办法
9440
查看次数