У меня есть две функции Python, где одна функция использует другую.Я должен передать одну и ту же переменную в обоих.Вместо явной передачи переменной дважды, есть ли способ для второй функции узнать переменные, переданные в первую?
Прямо сейчас я передаю переменную в качестве входных данных для первой функции, и она передаетсяво вторую функцию.
Структура моего текущего кода:
def DB_Connection(source):
conn = pyodbc.connect(dsn=source)
return conn
def DB_Query(source, sql_string):
conn = DB_Connection(source)
data = pd.read_sql(sql_string, conn)
return data
Это работает как ожидалось;однако я не знал, была ли это лучшая практика.Вместо этого есть ли способ сделать следующее, где DB_Connection()
знает source
, потому что он был передан в DB_Query()
:
def DB_Connection(source):
conn = pyodbc.connect(dsn=source)
return conn
def DB_Query(source, sql_string):
conn = DB_Connection()
data = pd.read_sql(sql_string, conn)
return data