我有一个清单l = [1, 2, 3],我想要l[2->infinity] == 3。基本上看起来像[1, 2, 3, 3, 3, 3, ...]。我试过了:
[1, 2, *3]
Run Code Online (Sandbox Code Playgroud)
要么
[1, 2, 3, ...]
Run Code Online (Sandbox Code Playgroud)
无论如何,是否要为一系列索引添加“默认元素”?
澄清度
我不想重复元素n时间,因为我无法在列表的长度之外进行索引。我实际上想为的所有索引提供一个值2->infinity。该索引范围的某种默认值。
我能想到的最好方法是将两个迭代器链接在一起,如下所示:
from itertools import *
chain([1, 2], repeat(3))
Run Code Online (Sandbox Code Playgroud)
REPL示例:
>>> list(islice(chain([1, 2], repeat(3)), 10))
[1, 2, 3, 3, 3, 3, 3, 3, 3, 3]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
83 次 |
| 最近记录: |