2015-12-04 2 views

ответ

2

Посмотрите на этом простом примере. Вы пытаетесь сравнить две разные вещи - Joint метод класса type и питон встроенные функции type - они имеют те же имена, что все:

class Joint(): 
    def type(self): 
     return u'joint' 

>>> j = Joint() 
>>> j.type() 
'joint' 
>>> type(j) 
<class '__main__.Joint'> 
+0

круто, так почему у впереди «сустава»? – shfury

+0

@shfury u означает unicode. Какую систему и версию python вы используете? – ndpu

+0

@shfury сначала я попытался запустить этот пример в python2 на самом деле, потому что u присутствует в этой строке - 'return u'joint''. Но когда я понял, что вы на python3 (по встроенному возвращаемому значению типа), я запустил свой код в python 3 и опубликовал результаты. Я думаю, что вы используете окна, потому что на linux в python3 нет никакого u перед напечатанным строковым значением (результат вызова 'j.type()' в моем примере), все строки в python 3 по умолчанию unicode ... – ndpu