Pra*_*dam 5 python list python-3.x
我有两个列表,我需要从这些列表中组合字符串,我已经尝试过,但我认为它对于较大的列表来说效率不高.
data = ['keywords', 'testcases']
data_combination = ['data', 'index']
final_list = []
for val in data:
for comb in range(len(data_combination)):
if comb == 1:
final_list.append([val] + data_combination)
else:
final_list.append([val, data_combination[comb]])
Run Code Online (Sandbox Code Playgroud)
我的输出是:
[['keywords', 'data'],
['keywords', 'data', 'index'],
['testcases', 'data'],
['testcases', 'data', 'index']]
Run Code Online (Sandbox Code Playgroud)
有没有更多的pythonic方式来实现它?
列表理解是一种方式."Pythonic"是主观的,我不会声称这是最可读或最理想的方法.
data = ['keywords', 'testcases']
data_combination = ['data', 'index']
res = [[i] + data_combination[0:j] for i in data \
for j in range(1, len(data_combination)+1)]
# [['keywords', 'data'],
# ['keywords', 'data', 'index'],
# ['testcases', 'data'],
# ['testcases', 'data', 'index']]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
123 次 |
| 最近记录: |