# tuple + tuple
>> (1, ) + (2, 3)
(1, 2, 3)
>> x = x.reshape((1, ) + x.shape)
# (150, 150, 3) ⇒ (1, 150, 150, 3),三维变四维
# tuple + list:TypeError
>> (1, ) + [2, 3]
TypeError: can only concatenate tuple (not "list") to tuple
# list + list
>> [1, ] + [2, 3]
[1, 2, 3]
1. 单元素?(3) ⇒ (3, )
>> l = [3]
>> type(l)
list
>> t = (3)
>> type(t)
int
>> l = [[3]]
>> l
[[3]]
>> t = ((3, 4))
>> t
(3, 4)
tuple 对单元素的处理识别为:
>> t = (3, )
>> t = ((3, ), )
2. tuple 可变乎?
+
及+=
的运算符重载
>> t = (1, 2)
>> t + (3, 4)
(1, 2, 3, 4)
>> t += (3, 4)
>> t
(1, 2, 3, 4)
3. tuple 可变乎?(二)
>> t = ([1, 2], 3, 4)
>> t[0][1] = 20
>> t
([1, 20], 3, 4)
4. 位置参数(positional parameters)与 tuple
Python 解释器将位置参数解析为 tuple,哪怕只有一个参数。
>> def foo(*args):
>> print(args)
>> foo(1)
(1,)