首页 > 解决方案 > 尝试创建一个函数,该函数根据字典中的“整数”值返回“字符串”键

问题描述

data = Sig_List.readlines()
N, E = [], []
for line in data:
    values = [str(s) for s in line.split()]
    N.append(values[0])
    E.append(values[1])

    Sig1 = dict(zip(N,E))
    Sig1={'Atg4a': '1.0241564267288767', 'Mast2': '-1.0014505579938486',...}
       
def up1(Sig1):
    for key, value in Sig1.items():
        if value >0:
            x=list(key)
    
up1(Sig1)

尝试输入具有 FC 值的基因名称列表,然后生成上下基因的子列表,这些子列表可以组合起来在不同的实验中制作维恩图。无法定义一个条件函数,该函数仅根据基因名称是向上还是向下返回基因名称。任何帮助或建议将不胜感激。

标签: pythonfunctiondictionary

解决方案


您可以在 dict 理解中完成所有操作:

data = Sig_List.readlines()
Sig1 = {
    str(s)[0], str(s)[1] for s in line.split()
    for line in data
}

ups = {k, v for k, v in Sig1 if int(v) > 0}
downs = {k, v for k, v in Sig1 if int(v) < 0}

推荐阅读