- python3不向后兼容
解压序列
>>>a, b = (1, 2)
>>>a
1
>>>b
2
使用*b解压序列,得到的b永远是一个list,b也可能是空list
>>>a, *b = [1, 2, 3, 4]
>>>a
1
>>>b
[2, 3, 4]
>>>a, *b = [1]
>>>a
1
>>>b
[]
星号解压语法在字符串操作的时候也会很有用,比如字符串的分割。
>>> line = 'nobody:*:-2:-2:Unprivileged User:/var/empty:/usr/bin/false'
>>> uname, *fields, homedir, sh = line.split(':')
>>> uname
'nobody'
>>> homedir
'/var/empty'
>>> sh
'/usr/bin/false'
>>>