The*_*Cat 3 python dictionary tuples defaultdict
我有一个defaultdict,其中键是一个4元组(gene_region,种类,本体,长度).
循环使用很简单:
for gene_region, species, ontology, length in result_dict:
Run Code Online (Sandbox Code Playgroud)
但是,我想以嵌套方式迭代它,如下所示:
for gene_region
for species
for ontology
...
Run Code Online (Sandbox Code Playgroud)
我该怎么做呢?没有其他方法可以先收集价值吗?或使用以下dum-dum方式:
for gene_region, _, _, _ in result_dict:
for _, species, _, _ in result_dict:
...
Run Code Online (Sandbox Code Playgroud)
您必须将所有各种关键元素收集到列表中,然后循环遍历这些元素(itertools.product()最好使用).收集可以通过以下方式完成zip():
from itertools import product
gene_regions, species_plural, ontologies, lengths = zip(*result_dict)
for gene_region, species, ontology, length in product(gene_regions, species_plural, ontologies, lengths):
# do something with this combo.
Run Code Online (Sandbox Code Playgroud)
product() 生成相同的组合序列,就像嵌套循环一样.
| 归档时间: |
|
| 查看次数: |
3072 次 |
| 最近记录: |