Python 为什么';t我的代码打印'os.path`
守则:Python 为什么';t我的代码打印'os.path`,python,import,module,Python,Import,Module,守则: def a(x): if x=='s': __import__('os') #I think __import__ == import print os.path 为什么不打印操作系统路径 我的下一个问题是:为什么下面的代码使用\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu \uuuu导入\uuuu返回一个
def a(x):
if x=='s':
__import__('os') #I think __import__ == import
print os.path
为什么不打印操作系统路径
我的下一个问题是:为什么下面的代码使用
\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu
\uuuu导入\uuuu
返回一个模块。它实际上没有向当前名称空间添加任何内容
您可能只想使用导入操作系统
:
def a(x):
if x=='s':
import os
print os.path
a('s')
或者,如果要将模块作为字符串导入,可以显式分配:
def a(x):
if x=='s':
os = __import__('os')
print os.path
a('s')
\uuuu导入\uuuu
返回一个模块。它实际上没有向当前名称空间添加任何内容
您可能只想使用导入操作系统
:
def a(x):
if x=='s':
import os
print os.path
a('s')
或者,如果要将模块作为字符串导入,可以显式分配:
def a(x):
if x=='s':
os = __import__('os')
print os.path
a('s')
@statictype.org的答案是正确的(\uuuuuu import\uuuuuu
不绑定本地名称空间中的任何名称),但您为什么要打印
或根据您的平台打印同样奇怪的东西?!这就是print os.path
在修复错误后将要做的--你想通过它实现什么
您确定不想要完全不同的东西,例如print os.environ['PATH']
或print os.getcwd()
编辑:回答OP的以下问题:
__import__(name)#why it do this
return sys.modules[name]
\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu;这比
return __import__(name)
如果name
包含一个或多个
s(点):。例如:
return __import__('foo.bar')
相当于
__import__('foo.bar')
return sys.modules['foo']
不像人们想象的那样
__import__('foo.bar')
return sys.modules['foo.bar']
@statictype.org的答案是正确的(\uuuuuu import\uuuuuu
不绑定本地名称空间中的任何名称),但您为什么要打印
或根据您的平台打印同样奇怪的东西?!这就是print os.path
在修复错误后将要做的--你想通过它实现什么
您确定不想要完全不同的东西,例如print os.environ['PATH']
或print os.getcwd()
编辑:回答OP的以下问题:
__import__(name)#why it do this
return sys.modules[name]
\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu;这比
return __import__(name)
如果name
包含一个或多个
s(点):。例如:
return __import__('foo.bar')
相当于
__import__('foo.bar')
return sys.modules['foo']
不像人们想象的那样
__import__('foo.bar')
return sys.modules['foo.bar']
为什么你试图使用导入?在文件顶部使用导入操作系统有什么问题吗?为什么你试图使用导入?在文件顶部使用导入操作系统有什么问题吗?嗨,alex,我已经更新了示例,请帮我看看,所以,“导入”必须是不同的名称,因为“导入”无法区分“a.txt”、“a.py”或“a.rar”,是吗?谢谢\uuu导入
导入Python模块,所以.py
(或.pyd
[[on Win;.so
在Linux上]]或直接导入.pyc
,如果存在并已更新的话),永远不会导入.txt
或.hi alex,我已经更新了示例,请帮我看一看,'import'必须是不同的名称,因为'import'不能区分'a.txt','a.py'或'a.rar',是吗?,谢谢\uuu import\uuuuu
导入Python模块,所以a.py
(或a.pyd
[[on Win;.so
在Linux上]],或直接使用.pyc
,如果已存在并已更新),从不使用.txt
或.rar
.hi@statictype.org,我已更新了示例,请帮助我查看hi@statictype.org,我已更新了示例,请帮助我查看