【发布时间】:2015-11-03 04:06:25
【问题描述】:
您好,我在将类和变量从其他 python 文件导入 python 文件时遇到问题。功能正常。
作为测试,我用一个函数、一个类、一个分配的类实例和一个随机变量来设置 file1。然后我在file2中使用了各种方法:
1。 导入文件1
2。 从文件 1 导入 * 错误:'名称未定义'
3。 从 file1 导入变量、类、实例等 错误:无法导入名称类
4+。然后做一些其他的事情... 创建 init.py 文件
或者然后尝试设置目录:
导入操作系统 os.chdir("/Users/mardersteina/Documents")
不知道我做错了什么。函数导入很好,但无论我在查找什么,都无法通过类和变量来解决这个问题。
无题7:
def happy():
print "yo!"
class Tap(object):
def __init__(self,level):
self.level = level
level4 = Tap(4)
x = 14
无题9:
%run "/Users/mardersteina/Documents/Untitled9.py"
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
/Users/mardersteina/Documents/Untitled9.py in <module>()
1 import Untitled7
2
----> 3 print Untitled7.x
4 """
5 from Untitled7 import Tap
AttributeError: 'module' object has no attribute 'x'
%run "/Users/mardersteina/Documents/Untitled9.py"
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
/Users/mardersteina/Documents/Untitled9.py in <module>()
4 print Untitled7.x
5 """
----> 6 from Untitled7 import Tap
7
8 print Tap(4).level
ImportError: cannot import name Tap
%run "/Users/mardersteina/Documents/Untitled9.py"
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
/Users/mardersteina/Documents/Untitled9.py in <module>()
11 from Untitled7 import *
12
---> 13 print level4.level
NameError: name 'level4' is not defined
【问题讨论】:
-
请显示不适合您的代码。显示 file1 中的类示例,以及如何尝试在 file2 中使用它。连同您看到的任何错误消息。可以从其他模块(文件)导入类和变量,效果很好。
-
在您的
untitled7中,缩进是否正确?类/变量x在函数内部没有缩进是吗?尝试做print(Untitled7.__file__)检查它是否是同一个文件。 -
缩进是正确的。 x 没有缩进。并且 print(Untitled7.__file__) 给了我正确的文件位置。
-
另外,当你在运行
Untitled9.py时,会不会是你之前在同一个控制台中导入了它,而它只有这个功能?
标签: python file class python-2.7 python-import