Достать класс из другого файла, при этом сохранив модули

У нас есть общая папка common/classes в которой мы храним классы, и допустим, хотим взять и запустить метод одного такого класса из другой папки all_code/some_part. В моём случае всё отлично импортируется, но единственная проблема, что в методе класса используется переменная (welcome_message) и 2 модуля (time, requests), которые импортированы и заданы в файле another_file.py

Хотелось бы не импортировать все эти модули в файле some_filename.py, так как в реальности их гораздо больше, чем 2. Так же дела обстоят с переменными. То есть задача импортировать класс из другого файла и чтобы этот класс видел все локальные и глобальные переменные из файла another_filename.py и при этом не прописывая имена вручную.

Структура проекта следующая:

common --
    classes --
        some_filename.py
all_code --
    some_part --
        another_file.py
run_it_all.py

И предположим, содержимое another_file.py:

from common.classes.some_filename import className
import time
import requests

welcome_message = "Method is going to start working!"
output = className.methodName('https://google.com')
print(output)

А содержимое файла some_filename.py:

class className:
   def methodName(self, url):
       print(welcome_message)
       return {'html' : requests.get(url), 'time' : time.time()}

run_it_all.py:

from all_code.some_part import *

В моём случае есть файл на 700 строк, из которого нужно одну функцию перенести в другую папку, чтобы иметь доступ к ней с любой точки проекта, но эта функция используется локальные переменные и модули. То есть я просто хочу импортировать код, но чтобы модули использовались в том месте, где я его имортирую.

Надеюсь на помощь, заранее спасибо!


Ответы (0 шт):