Как с помощью Python откомпилировать другой файл .py
я написал простой код который создает файл name + ".py" и записал в него маленький код, но я не знаю как можно было бы откомпелировать этот файл, я пытался сделать вот так: os.system("cd / & cd C:\Sherik & \'pyinstaller -F -w \' + name + \'.py\'") но не получилось, у меня python 3.8 работаю в Python Idle
вот часть кода:
file = open("C:\Sherik/" + name + ".py", "w", encoding="utf-8")
file.write("print ('Hello world')")
file.write("print ('Hello world')")
file.write("print ('Hello world')")
file.write("print ('Hello world')")
file.close()
os.system("cd / & cd C:\Sherik & \'pyinstaller -F -w \' + name + \'.py\' & cd /")
так же пробовал в os.system("cd / & cd C:\Sherik & \'pyinstaller -F -w \' + name + \'.py\' & cd /") менять двойные скобочки на одинарные чтоб во всем коде были одинаковые скобочки но это не помогло
Ответы (1 шт):
Хорошим тоном является использовать полный путь к файлу, а не только его имя, да еще и без расширения.
Ключ -w для pyinstaller значит "скомпилировать" в режим "без консоли", поэтому результат работы программы 2.exe вы не увидете.
Вот полный код:
import os
path = 'C:\\'
name = '2.py'
com = f'cd /D {path} && pyinstaller -F -w {name}'
with open(path+name, "w", encoding="utf-8") as file:
file.write("print('Hello world')\n")
file.write("print('Hello world')\n")
file.write("print('Hello world')\n")
file.write("print('Hello world')\n")
os.system(com)