0
最近我一直在学习Python的路径名操作,其模块的基本理解下面的语句搞糊涂了蟒子模块和路径名操作
os
和os.path
都是模块:(这怎么可能
然后我看着os.py源代码,发现下面的代码启发线
57. import posixpath as path
我的问题是
我为什么要使用os.path.join('bin','utils')
代替posixpath.join('bin','utils')
?
什么是简单的可能方式exlain x
和x.y
作为模块和什么时候应该我应用这种技术?
相关:http://stackoverflow.com/questions/2724348/should-i-use-import-os-path-or-import-os-“os.path'名称是这个 模块的别名在POSIX系统;在其他系统(如在Mac,Windows), 'os.path'提供了特定于平台 的方式相同的操作,并且是一个别名到另一个模块(例如macpath,ntpath)” –
如果看看那个'import posixpath as path'的上下文,你会发现它只发生在脚本运行在Posix系统上。 'posixpath'不打算由普通用户代码直接使用,你应该让'os'为你处理这些细节。否则,您的脚本将无法在非Posix系统上工作。 –
我发布了答案,感谢@Chris_Rands和@PM 2Ring指出了这一点。虽然有人仍然可以使用'posixpath',如果确切知道他/她在做什么,'os.path'是最好的选择 –