首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从另一个Python脚本获取变量(Python 3)

如何从另一个Python脚本获取变量(Python 3)
EN

Stack Overflow用户
提问于 2016-05-08 02:23:02
回答 1查看 1.1K关注 0票数 0

我有两个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:

代码语言:javascript
复制
#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 below

about.py:

代码语言:javascript
复制
#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)
EN

回答 1

Stack Overflow用户

发布于 2016-05-08 02:29:01

只需导入另一个文件。通过这样做,将运行文件并定义变量。

代码语言:javascript
复制
from boot import *
print('This project is made by ' + prj_developer)
print('Build: ' + prj_build)
print('Launched by: ' + prj_name)

我还建议将其他文件的所有代码放入if语句中时不应运行的所有代码(虽然在本例中不是必需的):

代码语言:javascript
复制
if __name__ == "__main__":
    pass # only run if file is executed directly (not from importing)

如果boot.py文件是上面的目录,您可以这样写(添加.对于每个父目录):

代码语言:javascript
复制
from .. import boot.*

如果boot.py文件就是上面的目录,您应该这样写(确保将名为__init__.py的空文件放入要从中导入的任何子目录中):

代码语言:javascript
复制
from DIRECTORY.boot import *
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37092135

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档