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

A: Python 2.6:

>>> map(chr, [66, 53, 0, 94])
['B', '5', '\x00', '^']

但是,在Python3.1中,上面返回的是一个贴图对象.

B: Python 3.1:

>>> map(chr, [66, 53, 0, 94])
<map object at 0x00AF5570>

如何在Python3上检索映射列表(如上面的A所示).十、

或者,有没有更好的方法?我的初始列表对象有大约45个项目,我想把它们转换成十六进制.

推荐答案

执行此操作:

list(map(chr,[66,53,0,94]))

在Python3+中,许多在iterables上迭代的进程本身返回迭代器.在大多数情况下,这最终会节省内存,应该会让事情进展得更快.

如果你最终要做的就是迭代这个列表,那么甚至不需要把它转换成一个列表,因为你仍然可以像这样迭代map个对象:

# Prints "ABCD"
for ch in map(chr,[65,66,67,68]):
    print(ch)

Python相关问答推荐

Python中MongoDB的BSON时间戳

Python在tuple上操作不会通过整个单词匹配

使用numpy提取数据块

Python daskValue错误:无法识别的区块管理器dask -必须是以下之一:[]

scikit-learn导入无法导入名称METRIC_MAPPING64'

无法通过python-jira访问jira工作日志(log)中的 comments

在Mac上安装ipython

在ubuntu上安装dlib时出错

Asyncio:如何从子进程中读取stdout?

索引到 torch 张量,沿轴具有可变长度索引

可以bcrypts AES—256 GCM加密损坏ZIP文件吗?

如何使用两个关键函数来排序一个多索引框架?

为什么我的sundaram筛这么低效

使用字典或列表的值组合

如何在GEKKO中使用复共轭物

当HTTP 201响应包含 Big Data 的POST请求时,应该是什么?  

为什么dict. items()可以快速查找?

如何使用大量常量优化代码?

如何在Python中创建仅包含完整天数的月份的列表

具有不匹配列的2D到3D广播