Witam mam plik, ktory ma nastepujaca postac:
Kod:
3d4s2 2D 3/2 0.00 SC85
5/2 168.34 SC85
3d2(3F)4s 4F 3/2 11519.99 SC85
5/2 11557.69 SC85
7/2 11610.28 SC85
9/2 11677.38 SC85
3d2(3F)4s 2F 5/2 14926.07 SC85
7/2 15041.92 SC85
Chcialabym napisac skrypt, ktory wczytuje odpowiednie kolumny.
Kod:
def parse(self):
for line in self.source:
line = line.strip()
tokens = line.split()
print len(tokens)
if len(tokens) == 5:
conf, term, J, Energy, ref = tokens
self.energies.append(float(Energy))
elif len(tokens) == 4:
term, J, Energy, ref = tokens
self.energifor line in self.source:
line = line.strip()
tokens = line.split()
conf,term,J,Energy,ref = tokens
self.energies.append(float(Energy))
self.J.append(mom_pend)es.append(float(Energy))
elif len(tokens) == 0:
continue
for i in self.energies:
print i
Nie wiem dlaczego, nie sa wpisywane wartosci do tablicy, gdy wiersz posiada 4 elementy.
Czy moglabym prosic o wskazanie mojego bledu?
Ok, znalazlam buga. To byl "czeski blad"
Mam jednakze innego typu pytanie.
Chcialabym wczytac kolumne z danymi typu 3/2, 5/2, itd.
Jednakze moj skrypt ma traktowac te wartosci jako dzialanie, np 3/2 =1.5
Kolejno chce pomnozyc te wartosci przez liczbe, stad taka potrzeba.