파일에서받은 번호에 1을 더한 다음이 새 정수를 원래 값을 대체하는 동일한 파일에 기록하는 프로그램을 만들려고합니다. 지금까지이 있습니다파일에서 원래 번호를 제거하는 동안 파이썬에서 파일에 숫자를 쓰려면 어떻게해야합니까?
import linecache
averagetracker = open("trackerofquiz.txt", "a")
averagenumber = linecache.getline("trackerofquiz.txt", 1).rstrip("\n")
print(repr(averagenumber))# to check if it has any strings
averagenumber = int(averagenumber)#these 4 lines get the number from the quiztracker for the
averagenumber = averagenumber + 1 #average, turns it into an int, adds 1 then turns it back to
averagenumber = str(averagenumber)#an str, not sure if you need to turn it back into an str
print(repr(averagenumber))# to check if it has any strings
averagetracker.write(averagenumber)
averagetracker.close()
print("success")
때마다 나는 그것이 작동하지만 내가 "0"로 시작하는, 그래서 만약 원래 값을 제거하고이 같은 파일에 기록됩니다를 실행하지 않습니다 할 "01". 그것을 다시 실행 한 다음 "01"을 사용하고 "012"와 같은 논리를 사용하여 끝에 2를 추가합니다. 어떻게하면 값을 제거하여 파일에서 값을 제거 할 수 있습니까? 개입하지 않습니까? 감사합니다. .
open 함수의 "a"인수 대신 "r +"를 사용해야합니다. "a"는 추가를 의미하므로 파일 끝에 만 쓸 수 있습니다. "r +를 사용하면 위치를 찾고 파일의 아무 곳에 나 쓸 수 있습니다 – Harry
음 ... 코드에 반복이 없습니다 – theBrainyGeek