Как проверить, является ли переменная строкой с совместимостью с Python 2 и 3

Я знаю, что могу использовать:isinstance(x, str)в python -3.x, но мне нужно проверить, является ли что-то строкой и в python -2.x. Будет ли isinstance(x, str)работать должным образом в python -2.x? Или мне нужно будет проверить версию и использовать isinstance(x, basestr)?

В частности, в питоне -2.x:

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

а в python -3.x нетu"foo"

162
задан Mark Amery 12 February 2018 в 13:13
поделиться