相关疑难解决方法(0)

如何在列表中找到重复项并使用它们创建另一个列表?

如何在Python列表中找到重复项并创建另一个重复项列表?该列表仅包含整数.

python list duplicates

397
推荐指数
17
解决办法
59万
查看次数

python列表中重复项的索引

有谁知道如何在python列表中获取重复项的索引位置?我试过这样做,它只给我一个列表中项目第一次出现的索引.

List = ['A', 'B', 'A', 'C', 'E']
Run Code Online (Sandbox Code Playgroud)

我希望它能给我:

index 0: A   
index 2: A
Run Code Online (Sandbox Code Playgroud)

python

41
推荐指数
7
解决办法
8万
查看次数

如何在Python中使用for循环在数组中查找重复元素?

我有一个包含重复元素的列表:

 list_a=[1,2,3,5,6,7,5,2]

 tmp=[]

 for i in list_a:
     if tmp.__contains__(i):
         print i
     else:
         tmp.append(i)
Run Code Online (Sandbox Code Playgroud)

我已经使用上面的代码来查找重复的元素list_a.我不想从列表中删除元素.

但我想在这里使用for循环.通常C/C++我们这样使用我猜:

 for (int i=0;i<=list_a.length;i++)
     for (int j=i+1;j<=list_a.length;j++)
         if (list_a[i]==list_a[j])
             print list_a[i]
Run Code Online (Sandbox Code Playgroud)

我们如何在Python中使用这样的?

for i in list_a:
    for j in list_a[1:]:
    ....
Run Code Online (Sandbox Code Playgroud)

我尝试了上面的代码.但它解决方案有误.我不知道如何增加价值j.

python duplicates

22
推荐指数
5
解决办法
7万
查看次数

如果给出一个外群,我如何为一组物种生成所有可能的Newick树排列?

如果给出一个外群,我如何为一组物种生成所有可能的Newick树排列?

对于那些不知道Newick树格式的人,可以在以下网址找到一个很好的描述:https: //en.wikipedia.org/wiki/Newick_format

我想在给出一个外群的情况下为一组物种创建所有可能的Newick树排列.我期望处理的叶节点的数量很可能是4,5或6个叶节点.

允许"软"和"硬"多面体. https://en.wikipedia.org/wiki/Polytomy#Soft_polytomies_vs._hard_polytomies https://biology.stackexchange.com/questions/23667/evidence-discussions-of-hard-polytomy

下面显示的是理想输出,"E"设置为outgroup

理想输出:

((("A","B","C"),("D"),("E"));
((("A","B","D"),("C"),("E"));
((("A","C","D"),("B"),("E"));
((("B","C","D"),("A"),("E"));
((("A","B")("C","D"),("E"));
((("A","C")("B","D"),("E"));
((("B","C")("A","D"),("E"));
(("A","B","C","D"),("E"));
(((("A","B"),"C"),"D"),("E"));
Run Code Online (Sandbox Code Playgroud)

但是,我使用itertools带来的任何可能的解决方案,特别是itertools.permutations,都遇到了等效输出的问题.我想出的最后一个想法涉及下面显示的等效输出.

等效输出:

((("C","B","A"),("D"),("E"));
((("C","A","B"),("D"),("E"));
((("A","C","B"),("D"),("E"));
Run Code Online (Sandbox Code Playgroud)

这是我的解决方案的开始.但是,除了itertools之外,我现在还不确定该怎么回事.

import itertools

def Newick_Permutation_Generator(list_of_species, name_of_outgroup)
    permutations_list =(list(itertools.permutations(["A","B","C","D","E"])))

    for given_permutation in permutations_list:
        process(given_permutation)

Newick_Permutation_Generator(["A","B","C","D","E"], "E")
Run Code Online (Sandbox Code Playgroud)

python iterator loops permutation bioinformatics

8
推荐指数
1
解决办法
799
查看次数

python collections.defaultdict()编译错误

以下代码简单而清晰,在编译时会产生错误:

import string
import collections

#create dictionary with alphabets as keys, and empty values
list = ['aema', 'airplane', 'amend']

gen_dict = dict.fromkeys(string.ascii_lowercase, '')

gen_dict = collections.defaultdict(list)

for x in list:
    gen_dict['a'].append(x)
Run Code Online (Sandbox Code Playgroud)

并产生的错误是:

Traceback (most recent call last):
  File "indexdict.py", line 14, in <module>
    gen_dict = collections.defaultdict(list)
TypeError: first argument must be callable
Run Code Online (Sandbox Code Playgroud)

任何的想法?提前致谢

python dictionary defaultdict

3
推荐指数
1
解决办法
3841
查看次数