テキストファイル10-10-1CNT_pot.pot_fmt
から特定のデータを読み込もうとしています。必要なデータはa
,b
およびc
であり、この場合はfft coefficients
(25,300,300)です。現在、これらを読むために私が考えることができる唯一の方法は、テキストファイル内での彼らの位置からです。しかし、私はこれが嫌いですが、テキストファイルが少し変更された場合はバグが発生しやすくなります。誰かが別の方法を提案することはできますか?特定のデータをテキストファイルから読み取る
以下の例のテキストファイル(とバギーコード)を参照してください:
BEGIN header
Real Lattice(A) Lattice parameters(A) Cell Angles
2.4675850 0.0000000 0.0000000 a = 2.467585 alpha = 90.000000
0.0000000 30.0000000 0.0000000 b = 30.000000 beta = 90.000000
0.0000000 0.0000000 30.0000000 c = 30.000000 gamma = 90.000000
1 ! nspins
25 300 300 ! fine FFT grid along <a,b,c>
END header: data is "<a b c> pot" in units of Hartrees
コード:
file = open("10-10-1CNT_pot.pot_fmt", 'r')
lines = file.readlines()
file.close()
parts = lines[3].split()
a = parts[5]
parts1 = lines[4].split()
b = parts1[5]
parts2 = lines[5].split()
c = parts2[5]
parts3 = lines[8].split()
width = parts3[0]
parts4 = lines[8].split()
height = parts4[1]
parts5 = lines[8].split()
depth = parts5[2]
読み込み(a、b、c)値だけが必要ですか? –
はい、文字列 "!fine FFT grid に沿って"の前に表示される3つの整数 –
これまでに何をしていますか?あなたのコードを投稿してください。 –