ValueError: операция ввода-вывода для закрытого файла. - для петли - PullRequest
0 голосов
/ 11 октября 2019

Я видел подобные вопросы, но мои немного отличаются, так как я не знаю, где делать отступ, потому что я использую цикл for вместо 'with'.

  f = open("Roll_List", "r+")
        for myline in f:
            print (myline)
            if CurrentUser in myline:
                x = myline.split()
                print (x[1])
                s = str(int(x[1]) + z)
                f.write(CurrentUser + " " + s)
                f.close()

Ответы [ 2 ]

2 голосов
/ 11 октября 2019

Используйте оператор with, чтобы автоматически закрыть файл после того, как вы закончите с ним.

with open("Roll_List", "r+") as f:
    for myline in f:
        print(myline)
        if CurrentUser in myline:
            x = myline.split()
            print(x[1])
            s = str(int(x[1]) + z)
            f.write(CurrentUser + " " + s)
2 голосов
/ 11 октября 2019

Попробуйте сделать f.close вне цикла for

f = open("Roll_List", "r+")
  for myline in f:
      print (myline)
      if CurrentUser in myline:
          x = myline.split()
          print (x[1])
          s = str(int(x[1]) + z)
          f.write(CurrentUser + " " + s)
  f.close()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...