Importing variables from another file?
如何将变量从一个文件导入另一个文件?
示例:
如何从一个变量导入到另一个变量?
1 | from file1 import * |
将导入文件1中的所有对象和方法
进口
要从file1导入所有变量而不淹没file2的命名空间,请使用:
1 2 3 | import file1 #now use file1.x1, file2.x2, ... to access those variables |
要将所有变量从file1导入到file2的命名空间(不推荐):
1 2 | from file1 import * #now use x1, x2.. |
来自文档:
While it is valid to use
from module import * at module level it is
usually a bad idea. For one, this loses an important property Python
otherwise has — you can know where each toplevel name is defined by a
simple"search" function in your favourite editor. You also open
yourself to trouble in the future, if some module grows additional
functions or classes.
最好显式导入x1和x2:
1 | from file1 import x1, x2 |
这允许您在使用
但是如果你真的想要,你可以导入所有的变量:
1 | from file1 import * |
实际上,这与导入变量时的情况并不完全相同:
1 2 | from file1 import x1 print(x1) |
和
1 2 | import file1 print(file1.x1) |
尽管在导入时x1和file1.x1具有相同的值,但它们不是相同的变量。例如,调用file1中修改x1的函数,然后尝试从主文件打印变量:您将看不到修改后的值。