Python 连接循环中的字符串

Python 连接循环中的字符串,python,string,loops,concatenation,Python,String,Loops,Concatenation,Python初学者在这里!我的目标是实现此形状的数组或字符串集: layer[1] = level[1].x1 layer[2] = level[1].x2 layer[3] = level[1].T layer[4] = level[2].x1 layer[5] = level[2].x2 layer[6] = level[2].T layer[7] = level[3].x1 ... 我创建了以下循环来创建字符串的以下部分: layers = 36 levels = 12 states =

Python初学者在这里!我的目标是实现此形状的数组或字符串集:

layer[1] = level[1].x1
layer[2] = level[1].x2
layer[3] = level[1].T
layer[4] = level[2].x1
layer[5] = level[2].x2
layer[6] = level[2].T
layer[7] = level[3].x1
...
我创建了以下循环来创建字符串的以下部分:

layers = 36
levels = 12
states = 12

for count_layers in range(1,37):
    print("layer["+str(count_layers)+"]=level[")

for count_levels in range(1,13):
    print(""+str(count_levels)+"].")
    print(""+str(count_levels)+"].")
    print(""+str(count_levels)+"].")

for states in range(1,13):
    print("x1")
    print("x2")
    print("T")
现在我在问自己如何将所有这些部分连接在一起,以便打印出所描述的字符串集。我试图创建一个数组,附加值,创建一个numpy数组,转置它并将三个数组部分堆叠起来,但没有成功,因为我得到了错误的数组:

  ['layer[1]=level['
  'layer[2]=level['
  'layer[3]=level['
  'layer[4]=level['
  'layer[5]=level['
  'layer[6]=level['
  'layer[7]=level['
  ...
  '1].' '1].' '2].' '2].' '2].' '3].' '3].' '3].' '4].' '4].' '4].'
  ...
  'x1' 'x2' 'M' 'x1' 'x2' 'M' 'x1' 'x2' 'M' 'x1' 'x2' 'M' 'x1' 'x2' 'M'
  ...]

有没有一种优雅的方法可以做到这一点?

您可以通过创造性的字符串格式和/或操作来做到这一点:

for k in range(0,90):
    print("layer[{}] = level[{}].{}".format(k+1, (k//3)+1, ["x1","x2","T"][k%3]) )
floordiv用于级别编号,即索引到后缀列表中的模,提供[x1,x2,T]之一

输出:

layer[1] = level[1].x1
layer[2] = level[1].x2
layer[3] = level[1].T
layer[4] = level[2].x1
layer[5] = level[2].x2
layer[6] = level[2].T
...snipp...
layer[88] = level[30].x1
layer[89] = level[30].x2
layer[90] = level[30].T
Python 3.6+字符串插值:

print(f"layer[{k+1}] = level[{k//3}].{['x1','x2','T'][k%3]}")                           

但这不起作用-你有什么?错误?你们能把你们的方法加入到帖子里吗?非常好的解决方案,泰!