Python标准库的“三六九等”

我们知道python标准库中有os,sys,string等模块,此时当前路径下有a.py,os.py,sys.py,string.py四个文件,其中除了a.py其余文件都为空,a.py内容如下:

#a.py
import sys
print(sys)
import os
print(os)
import string
print(string)

请问在当前路径运行a.py后,三个print出来的模块路径分别是什么,三个选项:A,当前路径;B,标准库路径;C,都不是。

Read More »

Python3模块包导入内部模块时为何应该使用“包相对导入”

目录
一、使用“绝对导入”代表你想使用外部模块
二、导入内部模块时也不应该使用自己包的名字
三、即使使用了“包相对导入”,也可以直接进行主模块测试

一、使用“绝对导入”代表你想使用外部模块

假设我们是模块包mod的编写者,现在用户的主目录中有a.py,b.py和我们的模块包mod,mod内含有b.py和c.py,目录结构如下:

Read More »