How to check if variable is string with python 2 and 3 compatibility

后端 未结 10 2328
有刺的猬
有刺的猬 2020-12-04 08:47

I\'m aware that I can use: isinstance(x, str) in python-3.x but I need to check if something is a string in python-2.x as well. Will isinstance(x, str)

10条回答
  •  伪装坚强ぢ
    2020-12-04 09:30

    You can try this at the beginning of your code:

    from __future__ import print_function
    import sys
    if sys.version[0] == "2":
        py3 = False
    else:
        py3 = True
    if py3: 
        basstring = str
    else:
        basstring = basestring
    

    and later in the code:

    anystring = "test"
    # anystring = 1
    if isinstance(anystring, basstring):
        print("This is a string")
    else:
        print("No string")
    

提交回复
热议问题