python 元组理解
python 元组比较语义 怪怪
Example
怪怪
1 对于空tuple (),
- cmp( (), (a)),
如果 a 是含有一个原子元素的tuple, 结果为1,即 () > (a) 为真, 如果 a 是一个list, 结果也为真, 如果 a 是一个tuple,若含有的元素多于一个,结果为假,
- 如仅含有一个原子元素,结果为真, 如果含有一个tuple元素, 递归 ##
对于含有更多元素的tuple间比较,嗷嗷,好像很复杂!
没看Python文档, 不清楚如何定义的.
看看源码? 好像对自己没什么用处尼?
讨论
一个元素的元组不是(a),而应该是(a,)。如果只是(a)那只是一个括号运算。
>>> a=(1) >>> a 1 >>> a=(1,) >>> a (1,)
- -- Limodou
"()"是元组
>>> type(()) <type 'tuple'> >>>
元祖的比较: 先按长度比较,长度相同是再按内容比较. (我也没看参考, 猜测应该是这样)
- -- Hoxide
是按tuple中每个元素进行比较的,不是先比较长度的,如:
(2,) > (1,2) True
与长度无关。
- -- Limodou