Передача Strin в методе класса Python
Моя входная строка из файла такова
АВИАЦИЯ НАЦИОНАЛЬНОЙ ГВАРДИИ
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
Мой выход должен быть
АВИАЦИЯ НАЦИОНАЛЬНОЙ ГВАРДИИ
0.0
0.0
0.0
0.0
0.0
0.0
100
0.3
Но теперь мой вход такой же, как и выход .Последние два нуля под строкой ANG должны быть заменены на 100.0 и 0.3 соответственно.Пожалуйста, помогите мне получить необходимый результат.
Что я уже пробовал:
import re class Calculate: def angCal(self,direction,magnitude,string): cnt=0 if cnt<=6: f4.write(string) cnt+=1 elif cnt==7: string=str(direction)+"\n" f4.write(string) cnt += 1 elif cnt==8: string = str(magnitude) + "\n" f4.write(string) cnt += 1 elif cnt==9: cnt += 1 angFlag=0 angcnt=0 f1=open("nominal.txt","r") f4=open("pp.txt","w") obj=Calculate() for line in f1.readlines(): string=line if re.match(r'ANG',string): angFlag=1 f4.write(string) elif angFlag==1 and angcnt==0: direction=100 magnitude=0.3 print(string) obj.angCal(direction,magnitude,string) angFlag=0 angcnt+=1 elif angFlag==1 and angcnt==1: direction=315 magnitude=0.4 else: f4.write(string)
Mohibur Rashid
Я понимаю ваше требование, но не понимаю, почему вы это делаете. Это необходимо для здравомыслия!
Mohibur Rashid
Вместо этого, если вы зацикливаетесь, добавьте все в массив и замените последние 2
BinshaS
Как добавить их в массив .Пожалуйста помочь
BinshaS
Не могли бы вы помочь мне с кодом