如何打印变量名称

时间:2013-09-29 21:58:02

标签: python variables printing

我设计了一个代码来计算字符串中出现的'CG'的百分比; GC_content(DNA)。

现在我可以使用此代码,以便打印具有最高GC内容的字符串的值;

print (max((GC_content(DNA1)),(GC_content(DNA2)),(GC_content(DNA3)))).

现在我如何打印此最大GC_content的变量名称?

3 个答案:

答案 0 :(得分:5)

您可以获得某些元组的max

max_content, max_name = max(
    (GC_content(DNA1), "DNA1"),
    (GC_content(DNA2), "DNA2"),
    (GC_content(DNA3), "DNA3")
)

print(max_name)

答案 1 :(得分:1)

如果您有许多DNA变量,可以将它们放在列表中

DNA_list = [DNA1, DNA2, DNA3]

我会将它们强制转换为字典,以将名称与原始数据和结果相关联。

DNA_dict = dict([("DNA%i" % i, {'data': DNA, 'GC': GC_Content(DNA)}) for i, DNA in enumerate(DNA_list)])

然后列出理解以获得您想要的数据

name = max([(DNA_dict[key]['GC'], key) for key in DNA_dict])[1]

这有利于允许变量列表长度

答案 2 :(得分:0)

你似乎想要

max([DNA1, DNA2, DNA3], key=GC_content)

这不是您要求的,但它似乎是您需要的