python - python "str is bytes"是否等同于 sys.version_info 测试?

标签 python

使用是否正确

if str is bytes: ...

代替

if sys.version_info < (3,): ...

区分python2和python3?特别是当由于 str 不是 unicode 的可能性而需要依赖于版本的代码时,前者有时对我来说似乎更清楚(并且避免了经常无缘无故的 import sys),但我从未见过使用此测试的 python 代码。 “str is bytes”仅作为第 2 版 CPython 的一个怪癖是真的,还是在所有 python2 中都得到保证?

最佳答案

请使用sys.version_info < (3,)告诉读者您正在尝试识别 python2 案例。

关于python - python "str is bytes"是否等同于 sys.version_info 测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47373006/

相关文章:

Python os.chdir() 似乎不起作用

python - 从 os.path.isfile() 函数接收 AttributeError

python - 从3个不同的文件中读取数据,并使用一个数据在所有文件中搜索另一个数据

python - 如果多个测试有特定异常,则停止 pytest 测试

Python:在迭代列表时删除列表元素

python - numpy np.where 扫描数组一次以获取对应于 T/F 条件的两组索引

python - Seaborn 在热图中显示 3 位数字的科学记数法

python - 如何将 QComboBox 中的文本存储在全局变量中

python - bool 掩码,如果 df 的时间戳与第二个 df 的两个时间点 - python

Python不在for循环中打印文件内容