企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
### 包管理工具 pip 在Python中,安装第三方模块,是通过包管理工具`pip`完成的。 如果你正在使用`Mac`或`Linux`,安装`pip`本身这个步骤就可以跳过了。 如果你正在使用`Windows`,请参考安装Python一节的内容,确保安装时勾选了`pip`和`Add python.exe to Path`。 在命令提示符窗口下尝试运行`pip`,如果`Windows`提示未找到命令,可以重新运行安装程序添加`pip`。 注意:`Mac`或`Linux`上有可能并存`Python 3.x`和`Python 2.x`,因此对应的`pip`命令是`pip3`。 ### 安装模块 现在,让我们来安装一个第三方库——`Python Imaging Library`,这是Python下非常强大的处理图像的工具库。不过,`PIL`目前只支持到`Python 2.7`,并且有年头没有更新了,因此,基于`PIL`的`Pillow`项目开发非常活跃,并且支持最新的`Python 3`。 一般来说,第三方库都会在`Python`官方的`pypi.python.org`网站注册,要安装一个第三方库,必须先知道该库的名称,可以在官网或者`pypi`上搜索,比如`Pillow`的名称叫`Pillow`,因此,安装`Pillow`的命令就是: ~~~ pip install Pillow ~~~ 耐心等待下载并安装后,就可以使用`Pillow`了。 有了`Pillow`,处理图片易如反掌。随便找个图片生成缩略图: ~~~ >>> from PIL import Image >>> im = Image.open('test.png') >>> print(im.format, im.size, im.mode) PNG (400, 300) RGB >>> im.thumbnail((200, 100)) >>> im.save('thumb.jpg', 'JPEG') ~~~ 其他常用的第三方库还有`MySQL`的驱动:`mysql-connector-python`,用于科学计算的`NumPy`库:`numpy`,用于生成文本的模板工具`Jinja2`,等等。 ### 模块搜索路径 当我们试图加载一个模块时,Python会在指定的路径下搜索对应的`.py`文件,如果找不到,就会报错: ~~~ >>> import mymodule Traceback (most recent call last): File "<stdin>", line 1, in <module> ImportError: No module named mymodule ~~~ 默认情况下,Python解释器会搜索当前目录、所有已安装的内置模块和第三方模块,搜索路径存放在`sys`模块的`path`变量中: ~~~ >>> import sys >>> sys.path ['', '/Library/Frameworks/Python.framework/Versions/3.4/lib/python34.zip', '/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4', '/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/plat-darwin', '/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/lib-dynload', '/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages'] ~~~ ### 如何添加自己的搜索目录 如果我们要添加自己的搜索目录,有两种方法: 一是直接修改`sys.path`,添加要搜索的目录: ~~~ >>> import sys >>> sys.path.append('/Users/michael/my_py_scripts') ~~~ 这种方法是在运行时修改,运行结束后失效。 第二种方法是设置环境变量`PYTHONPATH`,该环境变量的内容会被自动添加到模块搜索路径中。设置方式与设置`Path`环境变量类似。注意只需要添加你自己的搜索路径,Python自己本身的搜索路径不受影响。