在python中的每个for循环中,为每个循环并排编写两个变量

2024-09-28 17:04:10 发布

您现在位置:Python中文网/ 问答频道 /正文

各位python专家:

我有一个python代码,它有两个变量rha[iz][ib]和ener[rha][iz][ib]。我想为每个ib和每个rha打印,每行中的两个变量rha和ener。因此,rha接受一组值rha=np.linspace(-0.02,0.02101)。“za”的取值类似于za=np.linspace(0.0,0.008,10)。“ib”取任何整数,比如4、5或7。而ener依赖于rha,za,ib,所以,ener[rha,za,ib]

比如说,

for ib = 1, 4
 for iz = 1, 10
     i should write in the output file as
            rha1, ener1
            rha2, ener2
            rha3, ener3 and so on.

我希望我已经澄清了我的意图。我无法理解我刚才描述的方式。我用另一种方法得到的结果是无用的,例如,对于ib上的每个循环

  [rha1, rha2, rha3, rha4, 
   rha5, rha6, rha7] [ener1, ener2, ener3,
    ener4, ener5, ener6, ener7]
  [rha1, rha2, rha3, rha4,
   rha5, rha6, rha7] [ener1, ener2, ener3,
    ener4, ener5, ener6, ener7]

等等

请给我一些建议,以获得我想要的输出

这是我目前的情况,

 with open('band1.txt','w') as f:
     for iz,z in enumerate(za):
          vr=str(rha).strip('[]')
          vm=str(ener[:,iz,0]).strip('[]')
          myfile.write("%s %s\n" % (vr, vm))

多谢各位


Tags: fornpwriteibzalinspaceizener