上下文:我在一个提供结果文件的程序上运行计算。 在这些结果文件(扩展名.h5)上,我可以应用一个python代码(我不能更改这个python代码),这样它就可以得到一个方阵:
oneptdm.py resultfile.h5
例如:
^{pr2}$在一个名为一个PTDM.dat在
我想把这个矩阵的对角线变大。通常我只使用bash:
awk '{ for (i=0; i<=NF; i++) if (NR >= 1 && NR == i) print i,$(i) }' oneptdm.dat > diagonal.dat
但是出于x的原因,我现在不得不用python来做。我怎么能做到呢? 当然,我可以使用“subprocess”再次使用awk,但我想知道是否有其他方法可以使用python脚本2.6来实现这一点。 结果应该是:
(line) (diagonal element)
1 1
2 6
3 11
4 16
你可以试试这样的方法:
这应该能奏效。它假设文件以一个方阵开头,并且这个假设用于限制从文件中读取的行数。在
示例文件的输出:
^{pr2}$相关问题 更多 >
编程相关推荐