Ich stehe öfters vor der Aufgabe, ein File einzulesen und einen Teil davon weiter zuverarbeiten, bspw. Koordinaten von Atomen in einem Protein. Diese Koordinaten stehen auf einer Zeile zusammen mit vielen anderen (nicht relevanten) Werten:
Code: Alles auswählen
ATOM 938 1HB ALAAI 60 46.891 5.996 35.695 1.00 0.00 PROT 938
ATOM 939 2HB ALAAI 60 45.176 5.623 35.701 1.00 0.00 PROT 939
ATOM 940 3HB ALAAI 60 45.856 6.609 36.958 1.00 0.00 PROT 940
ATOM 941 HT ILEAI 61 48.011 7.894 34.251 1.00 0.00 PROT 941
ATOM 942 HA ILEAI 61 49.062 9.637 36.193 1.00 0.00 PROT 942
ATOM 943 HB ILEAI 61 49.967 8.946 33.414 1.00 0.00 PROT 943
ATOM 944 1HG1 ILEAI 61 49.961 7.087 34.900 1.00 0.00 PROT 944
ATOM 945 2HG1 ILEAI 61 50.721 8.089 36.145 1.00 0.00 PROT 945
ATOM 946 1HG2 ILEAI 61 51.407 10.558 35.429 1.00 0.00 PROT 946
ATOM 947 2HG2 ILEAI 61 50.777 11.119 33.889 1.00 0.00 PROT 947
Code: Alles auswählen
file = open('file.dat', 'w')
file.write('')
file.close()
file = open('file.dat', 'w')
resn_map = {}
def getLine():
data = open(arg, 'r')
value = data.readlines()
for line in enumerate(value):
if line[1].split()[0] == 'ATOM' or 'HETATM':
# first relevant value coordinates
file.write(line[1][23:26] + ' ' + line[1][32:54] + '\n')
file.close()