Как запустить другой файл python в коде
Перейти к содержимому

Как запустить другой файл python в коде

  • автор:

Как запустить из одного файла другой

У меня есть два файла: первый это файл с кодом «Меню», использующий модуль pygame_munu. Второй мой файл полноценный код игры. Я вовремя написание игры не смог создать ему меню, поэтому чуть позже хотел добавить его с помощью pygame_munu, но игра перестала работать и выдавала ошибку.
Поэтому я хочу из файла с «Меню», где есть кнопка, открыть файл с игрой, как это возможно сделать?

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
import pygame import pygame_menu pygame.init() surface = pygame.display.set_mode((600, 400)) def set_difficulty(value, difficulty): # Do the job here ! pass def start_the_game(): # Хочу открыть файл с код игры, при нажатий на кнопку во время запуска. pass menu = pygame_menu.Menu('Добро Пожаловать', 400, 300, theme=pygame_menu.themes.THEME_BLUE) menu.add.selector('Difficulty :', [('Hard', 1), ('Easy', 2)], onchange=set_difficulty) menu.add.button('Играть', start_the_game) menu.add.button('Quit', pygame_menu.events.EXIT) menu.mainloop(surface)

94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:

Как из одного макроса запустить другой
Друзья, помогайте! Есть один макрос, который надо вставить в другие. как это сделать? (чтобы не.

Как отследить завершение одного метода и по окончании его запустить другой
Как отследить завершение одного метода и по окончании его запустить другой?

Как скопировать текст от одной заданной метки до другой из одного текстового файла в другой?
нужно скопировать всё что находится в txt файле ОТ <dekl> ДО </dekl> подскажите пожалуйста, сам.

Как скопировать из одного файла в другой?
не понимаю, как копирование можно задать в коде #include "iostream.h" #include "fstream.h".

87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь

Как передать переменную из одного файла в другой
Здравствуйте. Создал класс MainWindow в mainwindow.h : #ifndef MAINWINDOW_H #define.

Как записать даные с одного файла в другой?
Нужно вывести сначала матрицу, это я сделал. Теперь записать в другой текстовый документ, как это.

Как перенести переменную из одного файла в другой?
У меня есть один файл в котором я получаю последнее id, как мне эту переменную перенести в другой.

Как переписать содержимое одного файла в другой
Я чайник в C# ни разу не работал в С# а нам сказали написать прграмму Создать консольную.

Как перенести строки из одного файла в другой?
Помогите составить программу Задание: Даны текстовые файлы A.TXT и B.TXT. Добавить в файл В.TXT.

Как запустить файл python во время выполнения другой программы?

Здравствуйте, возникла проблема с соединением двух файлов. Мне нужно после выполнения действий в одной программе, запустить другой файл python, находящийся в другой директории.

Лучшие ответы ( 1 )
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:

Запустить PDF-файл во время выполнения программы
могу ли я как-то запустить PDF файл во время выполнения программы, если да, то как это сделать ?

Как сделать проверку на пустой файл и выводить время выполнения программы,занимаемую память
import string import os symbol_len = 1 # Размер буфера чтения with open(‘111.txt’,’r+’) as.

Файл: Почему файл не открывается во время выполнения программы?
Почему файл не открывается во время выполнения программы? #include <conio.h> #include <stdio.h>.

Закрывается exe файл программы во время выполнения подсчета!
Привет, дамы и господа! Я новичок во всем этом деле , и недавно решил попробовать написать свою.

Эксперт функциональных языков программированияЭксперт Python

35346 / 19946 / 4179
Регистрация: 12.02.2012
Сообщений: 33,093
Записей в блоге: 13

1 2 3
import os #. r=os.system("python "+"полное_имя_файла_py")

Регистрация: 11.11.2021
Сообщений: 4

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

99 / 86 / 20
Регистрация: 10.09.2019
Сообщений: 708

Лучший ответ

Сообщение было отмечено Overkliker как решение

Решение

ЦитатаСообщение от Overkliker Посмотреть сообщение

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

Ну так укажите полный путь к файлу, проблема-то в чем? os.system просто выполняет команды оболочки внутри python.

Добавлено через 1 минуту

import sys sys.path.append(os.path.realpath('../..')) # если нужны относительные пути в директориях выше можно так.

Добавлено через 3 минуты

ЦитатаСообщение от Overkliker Посмотреть сообщение

он находиться в другой папке

Да и вообще слово «папка» — терминология из windows систем, по-взрослее их будет точнее называть их директорией или каталогом.
Если вы перейдете на unix-системы будет все гораздо понятнее и проще.

Эксперт функциональных языков программированияЭксперт Python

35346 / 19946 / 4179
Регистрация: 12.02.2012
Сообщений: 33,093
Записей в блоге: 13

ЦитатаСообщение от AlexMarkov Посмотреть сообщение

Если вы перейдете на unix-системы будет все гораздо понятнее и проще.
— неужели? В чем же существенная разница?
99 / 86 / 20
Регистрация: 10.09.2019
Сообщений: 708

Catstail, Не мне с Вами спорить конечно). Использование начинающим пользователем windows подобных систем, сравни высказыванию: «Благими намерениями. «. В способе применения и использования программных продуктов, в unix-подобных системах необходима мозговая активность, в отличии от windows систем с ее готовыми решениями.

Эксперт функциональных языков программированияЭксперт Python

35346 / 19946 / 4179
Регистрация: 12.02.2012
Сообщений: 33,093
Записей в блоге: 13

AlexMarkov, Неожиданно! Первый раз встречаю юниксоида, который честно признаётся, что nix-системы менее комфортны (требуют мозговой активности). Снимаю шляпу!

87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь

Как ограничить время выполнения программы?
При выполнении макроса у меня получается(непонятно где) бесконечный цикл. Можно ли просто как-то.

Как получить время выполнения программы?
подскажите, пожалуйста, как засечь время выполнения программы. нигде найти не могу=( пишут, что это.

Как вывести время выполнения программы?
Всем привет, как я могу вывести на экран время программного расчета какой-лио операции? Например: .

Как ускорить время выполнения программы
Добрый день 🙂 Исходные данные В единственной строке находится целое число N, 1 ≤ N.

Как посчитать время выполнения программы?
Подскажет ли кто то каким способом можно посчитать время исполнения программы? Добавлено через 1.

Как запустить файл со скриптом из другого файла со скриптом, запускающим первый файл?

Всем привет. Кто-нибудь знает способы запуска скрипта на python, который, к примеру, находится в файле file_1.py путем запуска другого файла file_2.py с кодом для запуска file_1.py. Для пояснения скажу, что в file_1.py находиться бесконечный цикл, который записывает данные в файл, поэтому простым импортом тут не обойтись, так как код в file_2.py должен интерпретироваться дальше после запуска file_1.py.

  • Вопрос задан более трёх лет назад
  • 1865 просмотров

Комментировать
Решения вопроса 1

Viktor_T2

python developer
subprocess же:

import subprocess cmd = 'python script.py' p = subprocess.Popen(cmd, stdout=subprocess.PIPE, shell=True) out, err = p.communicate() result = out.split('\n') for lin in result: if not lin.startswith('#'): print(lin)

Ответ написан более трёх лет назад
Нравится 2 1 комментарий

samodurOFF

Данил Самодуров @samodurOFF Автор вопроса
Про subprocess много слышал, но работать не приходилось. Спасибо, попробую.
Ответы на вопрос 1

Привет! Как я понял тебе нужно инжектировать\импортировать код после выполнения первого скрипта. Import можно вызывать и в конце скрипт, и даже используя условия. Вот пример:

import_rand = False if import_rand: import random print(int(random.randrange(10))) elif not import_rand: print(int(random.randrange(10)))

Если True, то модуль random импортируется и выведется число, если False, то будет ошибка (Модуль random не найден).

Ответ написан более трёх лет назад
Нравится 1 3 комментария

samodurOFF

Данил Самодуров @samodurOFF Автор вопроса

Если честно, то я не понял как ваше решение подходит в моем случае. Поясню еще. Код в file_2.py использует данные из файла, который был создан через file_1.py. Этот файл, пусть он будет назваться data.csv, постоянно пополняется новыми данными, которые постоянно обрабатываются в file_2.py циклом. Поэтому, как мне кажется, код в file_2.py должен выглядеть примерно так:

import pandas as pd # ТРИГЕР для запуска кода в file_1.py, чтобы получить файл data.csv while True: df = pd.read_csv('data.csv') print(df.tail())

Так вот, мне и нужно понять, как реализовать этот ТРИГЕР

Данил Самодуров, Снова здравствуйте. Создайте в file_1 функцию, например gen_file потом импортируйте ее в file_2 при помощи from file_1 import gen_file. После этого вы можете вызывать когда вам нужно функцию внутри другого фала, также передавать ему атрибуты через эту функцию и получать ответ через return (если нужно). Если вы не знаете как работать с функциями, то вот простой пример —

def gen_file(const_one, const_two): print("<> <>".format(str(const_one), str(const_two)))

В другом файле нам нужно вызвать эту функцию, для этого мы пишем такой код —

from file_1 import gen_file a = "Это константа 1" b = "А это константа 2" gen_file(a, b)

Будет выведено в консоль —

Это константа 1 А это константа 2

samodurOFF

Данил Самодуров @samodurOFF Автор вопроса

koval01, я знаю как работать с функциями. file_1.py уже и так содержит функцию и я ее импортировал в file_2.py. Это первое что пришло мне в голову. Но, как вы поняли, это не сработало. Проблема в том, что функция в file_1.py сдержит бесконечный цикл и ничего не возвращается через return. При ее вызове через импорт в file_2.py код ниже места вызова исполняться не будет, так как интерпретатор будет ожидать завершение работы скрипта в file_1.py а этого не происходит.

Как запустить из python внешний файл python

Каким образом можно вызвать выполнение другой программы python (из файла .py) во время выполнения текущей?

Отслеживать
47.8k 17 17 золотых знаков 56 56 серебряных знаков 100 100 бронзовых знаков
задан 21 мая 2020 в 10:52
71 1 1 золотой знак 1 1 серебряный знак 2 2 бронзовых знака
import os os.open()
21 мая 2020 в 10:53
пишет open() missing required argument ‘flags’ (pos 2)
21 мая 2020 в 11:15
А добавить недостающий аргумент что мешает?
18 окт 2020 в 10:41

3 ответа 3

Сортировка: Сброс на вариант по умолчанию

Можно еще вот так

 import os os.system('python путь_к_файлу.py') 

Отслеживать
ответ дан 20 авг 2020 в 23:46
5,585 2 2 золотых знака 10 10 серебряных знаков 35 35 бронзовых знаков

Наверное вам нужно это:

import os os.startfile(r'указывайте здесь путь к файлу') #пример os.startfile(r'C:\Program Files\Notepad++\notepad++.exe') 

Лучше вместе с меткой python 3.x указывайте метку python

Отслеживать
ответ дан 21 мая 2020 в 11:15
Ivan datlov Ivan datlov
110 8 8 бронзовых знаков

os.startfile(») или os.system(‘»Каталог1″\»Каталог2″\»Нужный файл»‘)

Но если вторая программа — тоже .py файл, то есть ограничения. Это будет работать, только если в системе установлена ассоциация: запускать .py файлы с помощью интерепретатора, а не открывать их в каком-нибудь текстовом редакторе.

Лучше будет, если ты скомпилируешь .py файл в .exe с помощью pyinstaller (у новичков могут возникнуть трудности при использовании) или cxfreeze (очень удобное управление, но проблемы с тем, чтобы найти этот инструмент и установить). и запустишь уже скомпилированный файл.

PS: компиляция приложений, использующих tkinter, полна нюансов (какие библиотеки положить с .exe — фалом, что установить, прописать и т.п.)

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *