回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<ol>
<li>设置计数时,第一个列表从零开始,递增20,直到计数用尽</李>
<li>使用相同的计数,第二个列表从1开始,对前五个索引重复1,然后
在100处递增1。重复此循环,直到列表用尽</李>
</ol>
<p><code>aaa</code>应从0开始递增20<br/>
<code>bbb</code>应该从1开始每5个索引增加1</p>
<p>结果:</p>
<pre class="lang-none prettyprint-override"><code>aaa00_bbb1
aaa20_bbb1
aaa40_bbb1
aaa60_bbb1
aaa80_bbb1
aaa100_bbb2
aaa120_bbb2
aaa140_bbb2
aaa160_bbb2
aaa180_bbb2
aaa200_bbb3
aaa220_bbb3
aaa240_bbb3
aaa260_bbb3
aaa280_bbb3
aaa300_bbb4
aaa320_bbb4 ...
</code></pre>
<p>我试过这样的方法,但我不知道如何让list<code>bbb</code>工作</p>
<pre><code>def my_func_a(cnt):
mylist = []
for i in range(0, cnt, 20):
value = 'aaa' + str(i)
mylist.append(value)
return mylist
aaa = my_func_a(500)
# print(aaa)
def my_func_b(cnt):
mylist = []
for i in range(0, cnt, 20):
value = '_bbb' + str(i)
mylist.append(value)
return mylist
bbb = my_func_b(500)
# print(bbb)
combined = list(map(''.join, zip(map(str, aaa), bbb)))
print(combined)
</code></pre>
<p>输出:</p>
<pre class="lang-none prettyprint-override"><code>['aaa0_bbb0', 'aaa20_bbb20', 'aaa40_bbb40', 'aaa60_bbb60', 'aaa80_bbb80', 'aaa100_bbb100', 'aaa120_bbb120', 'aaa140_bbb140', 'aaa160_bbb160', 'aaa180_bbb180', 'aaa200_bbb200', 'aaa220_bbb220', 'aaa240_bbb240', 'aaa260_bbb260', 'aaa280_bbb280', 'aaa300_bbb300', 'aaa320_bbb320', 'aaa340_bbb340', 'aaa360_bbb360', 'aaa380_bbb380', 'aaa400_bbb400', 'aaa420_bbb420', 'aaa440_bbb440', 'aaa460_bbb460', 'aaa480_bbb480']
</code></pre>
<p>用itertools试过一些东西,离我更近了,但我还是无法工作</p>
<pre><code>from itertools import chain, repeat, cycle
def myfunc(cnt):
mylist = []
for i in range(0, cnt+20, 20):
value = 'aaa' + str(i) + '_'
mylist.append(value)
return mylist
inventory_list = myfunc(500)
# print(inventory_list)
inventory = list(zip(inventory_list, chain(repeat(1,5), cycle(range(2, 3)))))
print(inventory)
</code></pre>
<p>输出:</p>
<pre class="lang-none prettyprint-override"><code>[('aaa0_', 1), ('aaa20_', 1), ('aaa40_', 1), ('aaa60_', 1), ('aaa80_', 1), ('aaa100_', 2), ('aaa120_', 2), ('aaa140_', 2), ('aaa160_', 2), ('aaa180_', 2), ('aaa200_', 2), ('aaa220_', 2), ('aaa240_', 2), ('aaa260_', 2), ('aaa280_', 2), ('aaa300_', 2), ('aaa320_', 2), ('aaa340_', 2), ('aaa360_', 2), ('aaa380_', 2), ('aaa400_', 2), ('aaa420_', 2), ('aaa440_', 2), ('aaa460_', 2), ('aaa480_', 2), ('aaa500_', 2)]
</code></pre>