python - 如何检查变量是否为具有 python 2 和 3 兼容性的字符串

标签 python string python-3.x python-2.x

我知道我可以在 python-3.x 中使用: isinstance(x, str) 但我还需要检查某些内容是否是 python-2.x 中的字符串。 isinstance(x, str) 会在 python-2.x 中按预期工作吗?还是我需要检查版本并使用 isinstance(x, basestr)

具体来说,在 python-2.x 中:

>>>isinstance(u"test", str)
False

而python-3.x没有u"foo"

最佳答案

如果您正在编写兼容 2.x 和 3.x 的代码,您可能希望使用 six :

from six import string_types
isinstance(s, string_types)

关于python - 如何检查变量是否为具有 python 2 和 3 兼容性的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11301138/

相关文章:

javascript - JSEncrypt(js) 加密,但 python 无法解密

python - IBM Cloud 功能 - 无法创建操作

java - 当字符串为单个字符时替换它

c++ - C/C++ : Inherent ambiguity of "\xNNN" format in literal strings

python - 对从Python中的对象获取值感到困惑

python - 多次嵌套 'for'循环,如果内层循环条件为真,继续下一次外层循环

python - 如何让可移动图像跟随鼠标旋转

python:将 os.Path 代码转换为 Pathlib 代码

python - 如果坐标不超过阈值,则对列进行分组

c - 如何从c中的字符串中提取数字?