我对 python 很陌生,我正在尝试以间隔将项目从一个列表附加到另一个列表。到目前为止,我的代码是:
def place_item(a,b):
interval = (4,8)
for s in a:
i = a.index(s)
b[i:i] = [s]
print b
a = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z']
b = [''] * (3*26)
place_item(a,b)
我得到的结果是列表中的前 26 个字母后跟 52 个 ' ' 空格,这是有道理的,因为我没有要求它多次生成“列表 a”或将项目放在“列表 a”中前一个列表之后的 4 到 8 个空格之间的间隔。所以基本上我试图循环“list a”并将其字母散布在“list b”中,相隔4和8个空格。而且我不知道该怎么做:(。有什么想法吗?
编辑:我将包括每个人向我指出的我忘记的内容。我希望项目之间的空格长度在 4 到 8 个字符之间,长度是为每个项目随机选择的。结果看起来像这样:
['a','','','','','','b','','','','','','','c','','','','','d'...]
编辑 2:blob8108 指出使用这种方法我很快就会用完空间。是否有可能让一些字母按正常顺序排列('a'、'b'、'c'、'd' 等),而其他字母与这些首字母隔开(例如'e'、'f ','g' 从 'a' 到 4-8 个空格,而 'h','i','j' 从 'b' 到 4-8 个空格)?结果可能如下所示:
['a','b','c','d','g','e','h','i',etc.]