完整的源代码是@ PEP 333。这两行:
status, response_headers = headers_sent[:] = headers_set
..和..
headers_set[:] = [status, response_headers]
我在这看什么? [:]
如何区别于什么都没有(仅headers_set
)?如果有人能提供解释,我会很高兴。
答案 0 :(得分:4)
[:]表示您正在覆盖整个列表的内容。
>>> a = [1,2,3]
>>> a[:] = [3,4]
>>> a
[3, 4]
>>> a[]
File "<stdin>", line 1
a[]
^
SyntaxError: invalid syntax
您可以使用相同的语法覆盖列表的某些索引范围:
>>> a[2:] = [3,4]
>>> a
[3, 4, 3, 4]