有什么办法可以将python 3版本的'bytes'导入到python 2中吗?

时间:2013-09-03 21:31:58

标签: python python-2.7 python-3.x

我正在编写python代码,我想支持python 2和3.我正在处理的最突出的数据类型之一是不可变的字节序列,所以我想找到一种优雅的方法来处理它们之间的差异python 2'bytes'(别名为'str')和python 3'bytes'(具体来说,它们切片和迭代的不同方式对我来说非常烦人)。

起初我尝试使用'bytearray'因为它似乎在python 2和3中都有相同的行为,但它是可变的这一事实是有问题的,因为我需要我的对象是可以清除的。

如果无法访问python 2中的python3'字节'行为,我正在考虑尝试的当前解决方案是:转换所有序列(无论它们是python 2'bytes'/'str'还是python 3个字节')到整数元组。

假设我不能在python 2中使用python 3'字节'类型,我还应该考虑其他解决方案吗?

1 个答案:

答案 0 :(得分:3)

使用six module及其b() literalbinary_type class。这将负担从您检查Python版本的负担。