Как сохранить значение глобальной переменной при использовании этой глобальной переменной в качестве имени файла? - PullRequest
0 голосов
/ 08 мая 2018

Я ищу, чтобы узнать, как создать глобальную переменную, назначенную значению в другой функции, чтобы сохранить значение при добавлении файла. Постскриптум Это упрощенная версия моего кода, и они не могут быть в одной функции.

def data():
    with open (username+'.txt','a') as f:
           f.write("\n")
def login ():
     username=input("What is your username. ")
     global username
login()
data()

Получается, что имя пользователя не определено, хотя в нем говорится, что мне запрещено делать:

 with open (global username +'.txt','a') as f:
             f.write("\n")

поэтому я не знаю, как сохранить значение.

1 Ответ

0 голосов
/ 08 мая 2018

Вы должны сначала объявить переменную в глобальной области видимости и использовать «глобальную переменную» до использования значения, а не после.

вот вам рабочий образец.

username = None

def data():
    global username
    username  = 'teste1'



def login():
    global username
    print('username before login : ', username)
    username = 'changed'
    print('username after login : ', username)


data()
login() 
...