【问题标题】:How to print the variable name [duplicate]如何打印变量名[重复]
【发布时间】:2013-09-29 21:58:02
【问题描述】:

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

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

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

现在我将如何打印这个 max GC_content 的变量名?

【问题讨论】:

标签: python variables printing


【解决方案1】:

你可以得到一些元组的max

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

print(max_name)

【讨论】:

    【解决方案2】:

    如果您有许多 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]
    

    这具有允许可变列表长度的好处

    【讨论】:

      【解决方案3】:

      你似乎想要

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

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-12-23
        • 1970-01-01
        • 2023-01-22
        • 2014-10-08
        • 1970-01-01
        • 2010-10-10
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多