在Python 3 type('jjj')=="<class 'str'>"
中,它的计算结果为False
,而Python 2中的type('jjj')=="<type 'str'>"
具有相同的结果。不知道为什么会发生这种情况,所以任何帮助(甚至是一点点推动)都会受到赞赏!为什么不是类型(字符串)等于“<class 'str'>”?
0
A
回答
6
这是因为type
函数没有返回字符串。它返回一个类型“类型”:
>>> type(type('hi'))
<type 'type'>
你此刻在做那么,什么是比较型“类型”的类型“字符串”,这将有结果False
。
我建议使用isinstance
:
>>> isinstance('hi', str)
True
1
混乱可以被炮弹诱发。当其他人打印类型的表示时,一些显示类型名称。
作为说明
蟒壳
>>>type('jj') <class 'str'>
IPython的
In [68]: type('a') Out[68]: str
这里使用的两个字符串:
In [69]: str.__name__
Out[69]: 'str'
In [70]: repr(str)
Out[70]: "<class 'str'>"
如上所述isinstance
是测试类型的好方法。
相关问题
- 1. 为什么字符串不相等?
- 2. 什么是“双”字符串类型?
- 3. 对于基于日期的Hive分区,为什么要使用字符串类型?为什么不是int?
- 4. 为什么字符串从文件中获取不等于普通字符串?
- 5. 在SQL Server中,为什么NULL不等于空字符串AND不等于空字符串?
- 6. NSOrderedDescending而不是NSOrderedSame为相等的字符串,为什么?
- 7. 为什么这个get参数不等于一个字符串?
- 8. 为什么字符串不等于存储的内容?
- 9. 为什么这两个字符串不等于?
- 10. 字符串是一个类为什么
- 11. 字符串... <varname>什么是字符串...意思是
- 12. For Loop。为什么它小于<不小于或等于<=?
- 13. 字符串不等于字符串?
- 14. 什么是字符串strName <>?
- 15. 为什么我的字符串不等于单个字符的测试工作?
- 16. 为什么字符串EndsWith和StartsWith等于真正与字符串。空
- 17. 为什么PHP有两个“不等于”运算符(=和<>!)
- 18. 为什么字符串的行为类似于值类型,而使用==
- 19. 为什么字符串和矢量的不同类型?
- 20. 为什么postgres将不同类型分配给字符串?
- 21. Android字符串不等于
- 22. 不等于字符串
- 23. 为什么这种类型不相等?
- 24. Excel:字符串与整数比较等于TRUE,但为什么?
- 25. 什么是Java的类<X>类型的C#等价物?
- 26. 为什么PHP的类型暗示认为我的类是一个字符串?
- 27. 字符等于字符串
- 28. 为什么java将字符串创建为IMMUTABLE CLASS?
- 29. C++中的字符串文字的类型是什么?
- 30. 为什么散列<const char*>适用于字符串,但不适用于字符串变量?
对不同的方式获取对象的类型和结果很好的解释!但是,我被“炮弹”弄糊涂了。另外,你会在Python中尝试这个,而不是IPython。 –