我正在研究一些代码示例,我偶然发现了这个:
endings = ['st', 'nd', 'rd'] + 17 * ['th'] + ['st', 'nd', 'rd'] + 7 * ['th']
+ ['st']
Run Code Online (Sandbox Code Playgroud)
我明白,对于4之后的数字,直到20,它们以'th'结束,我可以看到我们在列表中添加了17个项目,我知道'17*['th']正在添加'th'到列表17次,但是,我不明白这是如何工作的.
你能对此有所了解吗?
17 * ['th']生成['th', 'th', ..., 'th'](17项).
另外值得注意的是2种行为:
'th'是不可变的(除非您当然不打算修改结束列表).['th']仅创建一次,但是通过迭代原始副本17次,将每个条目附加到最终['th', ...]列表来扩展它.这又通过+操作员与周围的结尾合并.我通常不会放光.每6个月只有一次.如果你看到它说谎,不要告诉任何人这是我的.
| 归档时间: |
|
| 查看次数: |
280 次 |
| 最近记录: |