在 For 循环中打印变量

问题描述

from matplotlib.pyplot import figure
T10,T11,T12,T13 = nx.random_tree(10),nx.random_tree(11),nx.random_tree(12),nx.random_tree(13)
T = [T10,T13]
for t in T: 
    print("The Pruefer Code for -",pruefer_code(t))
    fig = figure()
    axis = fig.add_subplot(111)
    nx.draw(t,**opts,ax = axis)
    

结果:

The Pruefer Code for -  [2,8,1,9,5,6,8]
The Pruefer Code for -  [9,10,7,4,6]
The Pruefer Code for -  [4,11,3,8]
The Pruefer Code for -  [8,2,7]

加上图表 - 我将如何修改代码,以便它说:

The Pruefer Code for - T10 [2,8]
The Pruefer Code for - T11 [9,6]
The Pruefer Code for - T12 [4,8]
The Pruefer Code for - T13 [8,7]

感谢任何帮助:)

解决方法

您可以执行以下操作:

from matplotlib.pyplot import figure
T10,T11,T12,T13 = nx.random_tree(10),nx.random_tree(11),nx.random_tree(12),nx.random_tree(13)
T = [T10,T13]
for i,t in enumerate(T): 
    print("The Pruefer Code for - T1{:}".format(i),pruefer_code(t))
    fig = figure()
    axis = fig.add_subplot(111)
    nx.draw(t,**opts,ax = axis)

enuemerate 将返回列表中的元素以及索引 ([0,3])。然后在将当前索引 print 添加到字符串的同时将常量字符串 T1 添加到 i 将给出所需的结果(使用 format)。