如何创建导入其他导入的python脚本
我想创建一个导入其他导入的文件,例如 startup.py:如何创建导入其他导入的python脚本,python,Python,我想创建一个导入其他导入的文件,例如 startup.py: import numpy as np import matplotlib.pyplot as plt import matplotlib matplotlib.use('qt5agg') ... 刚写完的 import startup 所有的都有 可能吗?不建议为可读性考虑,但您可以写: from startup import * 在要使用np等的文件中,您可以执行以下操作 startup.py import numpy as
import numpy as np
import matplotlib.pyplot as plt
import matplotlib
matplotlib.use('qt5agg')
...
刚写完的
import startup
所有的都有
可能吗?不建议为可读性考虑,但您可以写:
from startup import *
在要使用np等的文件中,您可以执行以下操作 startup.py
import numpy as np
import matplotlib.pyplot as plt
import matplotlib
np = np
plt = plt
matplotlib = matplotlib
main.py
from startup import *
plt.show()
在我看来,这有点难看,但很管用。看看旧的StackOverflow帖子,它详细介绍了实现你想要的东西的许多不同方法,特别是Eric Leschinski的精彩评论
我首先要检查的最简单的解决方案是创建一个新目录,并通过在其中创建一个包含导入的_init__.py文件将其声明为一个包
您的这个虚拟包将是输入处理程序,然后从主脚本中从root.parent.folder.file导入类/变量/任何内容。主要缺点是不允许非相对路径,但如果所有项目都是自包含的,则也可以。您可以尝试以下操作:
让file1为abc.py
让file2为main.py:
输出:
A B
0 1 2
1 2 3
2 3 4
我建议您明确指定要在star导入时导入的模块: 请尝试以下示例:
#example.py
import time
import random
import collections
__all__ = ['time', 'random']
$ python
>>> from example import *
>>> dir()
['__builtins__', '__doc__', '__name__', '__package__', 'random', 'time']
查看它如何不导入collections模块,因为我没有要求它:您可以在_init__.pyuse:from startup import中这样做*
A B
0 1 2
1 2 3
2 3 4
#example.py
import time
import random
import collections
__all__ = ['time', 'random']
$ python
>>> from example import *
>>> dir()
['__builtins__', '__doc__', '__name__', '__package__', 'random', 'time']