常用模块
Posted alexchenx
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了常用模块相关的知识,希望对你有一定的参考价值。
什么是模块
在平时的开发过程中,随着代码越写越多,到最后如果要对某一处进行修改就显得难以维护了,稍不注意要是改错了就会出大问题。
所以为了维护的便捷,我们就把很多函数进行分组,放到不同的文件里,就可以通过文件名本身进行功能区分,每个文件里的代码量也会相对较少,更有利于维护,很多语言都是这样的,在Python里,一个.py文件就是一个模块。
使用模块有什么好处
1. 提高代码可维护性;
2. 可重用,编写代码不必从零开始,直接引用即可,其他地方也可以用;
3. 避免函数名和变量名冲突,因为一个文件中如果代码太多,就会声明有很多的函数名和变量名,有时候你在定义一个变量名时,自己都不知道是否已经用过了,分为多个文件,文件各自的作用域第独立的,所以能够尽量避免函数名和变量名的冲突。
模块的分类
1. 内置标准模块(又称标准库),是Python安装后自带的模块;
2. 第三方开源模块:从其他拷贝过来的,或第三方网站上安装的,通常从https://pypi.org/安装
3. 自定义模块:即自己写的,一个.py文件,里面写几个函数,也可以是模块。
导入模块的方法
# 导入整个sys模块,使用sys模块时,需要在功能前面加上sys,如:sys.getrecursionlimit() import sys # 从os模块中,只导入rmdir和rename两个功能,多个功能用逗号隔开。使用时功能前面不用加os,直接就可以使用,如:rmdir("abc.txt") from os import rmdir, rename # 从django的子模块core中导入handlers功能 from django.core import handlers # 模块太长了,导入multiprocessing模块并通过as取一个别名叫mul import multiprocessing as mul # 导入socket模块下所用的功能。 from socket import
注意:模块一旦被调用,就相当于执行了里面的代码。所以模块顶层一般不写执行代码,特殊除外。
模块的导入路径
导入自己的模块的是要要注意路径问题,相对路径和绝对路径。
Python默认的模块在哪里:
可以通过sys.path看到python使用哪些地方找的:
>>> import sys >>> sys.path [‘‘, ‘D:\PycharmProjects\python_fullstack_middle\venv\Scripts\python36.zip‘, ‘C:\Python36\DLLs‘, ‘C:\Python36\lib‘, ‘C:\Python36‘, ‘D:\PycharmProjec ts\python_fullstack_middle\venv‘, ‘D:\PycharmProjects\python_fullstack_middle\venv\lib\site-packages‘, ‘D:\PycharmProjects\python_fullstack_middle\ve nv\lib\site-packages\setuptools-39.0.1-py3.6.egg‘, ‘D:\PycharmProjects\python_fullstack_middle\venv\lib\site-packages\pip-9.0.3-py3.6.egg‘] >>>
第一个元素为空,表示是当前目录。
内置的模块和从第三方装的模块都会放到 site-packages 目录下。
添加自定义模块目录到sys.path里面:
sys.path.append("D:\abc") # 表示我的模块存在D盘的abc目录下
导入和移除模块:
import my_module del my_module
开源模块的学习和安装方式
https://pypi.org/ 是Python的开源模块库,全世界的开发者都可以在上面贡献自己的模块。
两种安装方式:
这里以大王的一个例子项目为例:alex_sayhi ,搜索这个项目 点进去就会有安装方式。
方式一(源码安装):
如大王的项目,搜索到后,点击Download files 就可以找到下载链接,下载下来后解压,然后执行:
python setup.py build # 编译源码 python setup.py install # 安装源码
方式二(通过pip安装):
在项目页面上方就直接有安装命令:
pip install alex_sayhi
这种方式最简单,安装后在 site-packages 目录里面可以找到。
安装的时候的输出:
C:>pip install alex_sayhi Collecting alex_sayhi Downloading https://files.pythonhosted.org/packages/84/14/b59d93276c86f6ab556cfa7c2d860b742c1611b601cc4c7743d129b4b52a/alex_sayhi-1.0.0.tar.gz Installing collected packages: alex-sayhi Running setup.py install for alex-sayhi ... done Successfully installed alex-sayhi-1.0.0 You are using pip version 9.0.1, however version 10.0.1 is available. You should consider upgrading via the ‘python -m pip install --upgrade pip‘ command. C:>
国内源:
从官网安装可以由于一些网络因素会很慢,我们可以选择使用国内的豆瓣源。
pip install -i http://pypi.douban.com/simple/ alex_sayhi --trusted-host pypi.douban.com #alex_sayhi是模块名
以上是关于常用模块的主要内容,如果未能解决你的问题,请参考以下文章