Когда нужно проверить - строка ли переменная в Python - есть небольшой подводный камень, о котором иногда забывают...
Все ли помнят что строки в питоне разные? (например, str и unicode), так что для общей проверки нужно использовать isinstance(val, basestring):
Например
Все ли помнят что строки в питоне разные? (например, str и unicode), так что для общей проверки нужно использовать isinstance(val, basestring):
Например
$ python Python 2.7.1 (r271:86832, Jul 31 2011, 19:30:53) [GCC 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> isinstance('abcd', str) True >>> isinstance('abcd', basestring) True >>> isinstance(u'abcd', str) False >>> isinstance(u'abcd', basestring) True
Комментариев нет:
Отправить комментарий