如何确定Python对象是否为字符串?

问题描述 投票:385回答:13

如何检查Python对象是否是字符串(常规或Unicode)?

python string types compatibility
13个回答
297
投票

Python 2

isinstance(obj, basestring)用于测试对象obj


1
投票
[今晚,我遇到了一种情况,在这种情况下,我[想我不得不检查isinstance(your_object, basestring) 类型,但事实证明我没有。

0
投票
from . import getfields def test_getfields_novalidation(): result = ['a', 'b'] assert list(getfields('a b')) == result assert list(getfields('a,b', sep=',')) == result assert list(getfields('a', 'b')) == result assert list(getfields(['a', 'b'])) == result

-3
投票
def is_string(s): return isinstance(s, basestring)

-4
投票
来自EDX-在线课程MITx:6.00.1x计算机科学和使用Python编程简介

173
投票

检查对象o是否是字符串类型的子类的字符串类型:


156
投票

Python 3


91
投票

Python 2和3


18
投票

我发现了这个import sys PY3 = sys.version_info[0] == 3 if PY3: string_types = str else: string_types = basestring


12
投票

如果要远离显式类型检查(并且有充分的理由远离它),则可能要检查的字符串协议最安全的部分是:


11
投票
为了检查变量是否可以使用:

False


5
投票
我可能会像其他人提到的那样以鸭蛋式处理。我怎么知道一个字符串真的是一个字符串?好吧,显然是通过

converting

将其转换为字符串!

3
投票
unicode
如果您的对象确实是字符串类型,则为True。 'str'是保留字。
© www.soinside.com 2019 - 2024. All rights reserved.