Связь между программами python
Есть две программы написанные на python. Как из первой программы направить запрос во вторую?
То есть условно говоря первая программа отправляет текст "Hello, world!", а вторая его получает и выводит на экран
UPD 1: Я не имею в виду работу с библиотекой socket и ей подобными
UPD 2: Обе программы запускаются на одном компьютере
UPD 3: Я не имею ввиду работу с импортами
Ответы (1 шт):
Под вопросом "Как сделать запрос во вторую программу?" я наверное понял, как вам из одной программы достать переменную/вызвать функцию из другой программы.
Я пишу код для примера, а автор вопроса уже сам адаптирует его под себя:
#main1.py
def func():
int1 = 10
print(int1)
#main2.py
from main1 import func
func()
Есть несколько примечаний:
- Оба .py файла должны быть в одной папке (если они в разных папках, то нужно импортировать уже из папки так):
#C:\Users\[имя пользователя]\Dekstop\testfolder\main1.py
def func():
int1 = 10
print(int1)
#C:\Users\[имя пользователя]\Desktop\main2.py
from testfolder.main1 import func
func()
- Нельзя делать так:
#main1.py
from main2 import func2
def func1():
int1 = 10
print(int1)
#main2.py
from main1 import func1
def func2():
int2 = 20
print(int2)
Если так сделать, то смотря с какого файла ты запустишь программу вылезет такая ошибка:
ImportError: cannot import name 'main1' from partially initialized module 'main2' (most likely due to a circular import)
- Если Вы собрались компилировать программу через pyinstaller в один .exe файл, то не забудьте прописать это:
pyinstaller --onefile main1.py -p main2.py
Первое название файла после --onefile будет выступать некой "точкой запуска", то есть файл main1.py будет являться основной программой. Имейте это в виду.
Надеюсь, автор получил тот ответ, который хотел.