определить переменную, используемую в функции в другом файле python - PullRequest
0 голосов
/ 10 июля 2020

У меня два файла, и по какой-то причине я не хочу определять свою переменную в качестве входных данных в моей функции:

function.py

def test():
   print(var)

if __name__ == '__main__':
   var = "test"
   test()

call_function.py

from function import *
global var 
var = "test"
test()

Если я это сделаю, я получаю сообщение об ошибке, что var не определен. Как я могу это решить?

1 Ответ

0 голосов
/ 10 июля 2020

Вы можете сделать что-то подобное, но тот факт, что это работает, не означает, что это хорошо, НЕ КОДИРУЙТЕ КАК ЭТО.

from function import *

var = ['I WILL FIRE YOU IF I SEE CODE LIKE THIS IN AN APPLICATION']

test.__globals__['var'] = var

test() # output: ['I WILL FIRE YOU IF I SEE CODE LIKE THIS IN AN APPLICATION']

var[0] = "DO NOT DO THIS, YOU'LL BREAK SOMETHING IF YOU DON'T KNOW WHAT ARE YOU DOING"

test() # output: ["DO NOT DO THIS, YOU'LL BREAK SOMETHING IF YOU DON'T KNOW WHAT ARE YOU DOING"]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...