我有两个Python3.5脚本,boot.py和about.py。Boot.py位于/os,而about.py位于/os/bin。Boot.py使用os.system(/path/about.py)启动about.py。问题是about.py需要boot.py中的变量,我不想重写它们。因此,我需要以一种可以读取/使用boot.py中的变量的方式启动about.py。如果不清楚,我在下面发布了代码。
boot.py:
#Boot.py
import os
import subprocess
import socket
import platform
import multiprocessing
import time
import datetime
from random import randint
#Create functions
def cls():
os.system('cls' if os.name=='nt' else 'clear')
#Set the variables
prj_name = 'boot.py'
prj_build = 1.01
prj_developer = 'RED'
#Bunch of print() and input() commands belowabout.py:
#Somehow get the variables and functions defined in boot.py
print('This project is made by ' + prj_developer)
print('Build: ' + prj_build)
print('Launched by: ' + prj_name)发布于 2016-05-08 02:29:01
只需导入另一个文件。通过这样做,将运行文件并定义变量。
from boot import *
print('This project is made by ' + prj_developer)
print('Build: ' + prj_build)
print('Launched by: ' + prj_name)我还建议将其他文件的所有代码放入if语句中时不应运行的所有代码(虽然在本例中不是必需的):
if __name__ == "__main__":
pass # only run if file is executed directly (not from importing)如果boot.py文件是上面的目录,您可以这样写(添加.对于每个父目录):
from .. import boot.*如果boot.py文件就是上面的目录,您应该这样写(确保将名为__init__.py的空文件放入要从中导入的任何子目录中):
from DIRECTORY.boot import *https://stackoverflow.com/questions/37092135
复制相似问题