一、模块定义

python中,一个.py文件就是一个模块(Module)。

使用模块的好处:
1、提高了代码的可维护性。我们把函数进行分组,分别放在不同的模块中。
2、编写代码不必要从0开始,当一个模块编写完毕,就可以被其他的模块引用。python有很多内置的模块和第三方模块供引用。
3、可以避免函数名和变量名重复。相同的函数名和变量名可以同时存在于不同的模块中。
如果编写了同名的模块,可以通过引用包(package)的概念来解决。
一个标准的包的结构如下:

mycompany
 ├─ web
 │  ├─ __init__.py
 │  ├─ utils.py
 │  └─ www.py
 ├─ __init__.py
 ├─ abc.py
 └─ xyz.py

1)可以有多级目录结构,组成多层次的包结构
2)每个包的根目录中必要要存在__init__.py的文件。否则这就不是一个包,而是一个普通的目录
3)__init__.py文件可以为空文件,也可以有python代码。它本身就是一个模块,模块名是mycompany
4)abc.py的完整模块名是mycompany.abc
5)utils.py的完整模块名是mycompany.web.utils
6)web目录下面的__init__.py的完整模块名是mycompany.web
创建自己的模块时,请遵循python的变量命令规范,不要有中文、特殊字符;另外,也不能创建和系统模块已经存在的模块。

二、模块的使用

python内置了很多模块。可以通过  模块名.参数名 或者 模块名.函数名 来查询或者调用相应的功能。

当我们在命令行运行一个.py模块文件的时候,python解释器会把一个特殊变量_name__置为__main__,通常可以利用这一点使用 if __name__ == __main__ 代码实现测试。

作用域

public和private在python中的定义:

一般的,正常的函数和变量名是公开的(public),可以直接被引用,比如abc,x,PI等;

类似__xx__这样的变量是特殊变量,可以直接被引用,但是有特殊用途,比如__author__,__name__,__doc__就是特殊变量;

类似_XXX和__xxx这样的函数或变量就是非公开的(private),不应该直接引用;这里用的词是不应该,而不是不能。是因为,python并没有一种方法可以完全限制访问private函数或变量,只能说,习惯上不应该引用private函数或者变量。

安装第三方模块

在python中,是通过pip管理工具来安装第三方模块的。

如果操作系统是Mac或者Linux,可以直接跳过pip这个步骤;

如果是windows,在命令行下,输入 pip,看是否有相关命令提示,如果有,则说明已安装,如果提示未找到命令,可能你还得需要重新运行安装程序,添加pip,并且确保勾选Add python.exe to path 选项。

PS E:\python3.6.3\workspace> pip

Usage:
pip <command> [options] Commands:
install Install packages.
download Download packages.
……

说明我已经安装pip工具。

一般来说,第三方库都会在python官网上注册,如果你要安装一个第三方库,必须先知道该库的名称,可以在官网或者pypi上搜索,比如Pillow。安装Pillow的命令就是:

PS E:\python3.6.3\workspace> pip install Pillow
Collecting Pillow
Downloading Pillow-5.0.0-cp36-cp36m-win32.whl (1.4MB)
2% |█ | 40kB 5.1kB/s eta 0:04:23

python——模块(Module)的概念、使用以及安装第三方模块的更多相关文章

  1. python 安装第三方模块

    在Python中,安装第三方模块,是通过setuptools这个工具完成的. 如果你正在使用Mac或Linux,安装setuptools本身这个步骤就可以跳过了. 如果你正在使用Windows,请首先 ...

  2. python使用pip安装第三方模块遇到的问题及解决方法

    python使用pip安装第三方模块遇到的问题及解决方法 关注公众号"轻松学编程"了解更多. 使用国内源: 清华:https://pypi.tuna.tsinghua.edu.cn ...

  3. sae python安装第三方模块

    sae python安装第三方模块 经过这一个星期的折腾,发现编程真心不是看出来的,真心是跟着书上的代码敲出来的.sae的服务做得很好,不过有时候会崩就是了.当sae上没有自己所需要的第三方模块时,可 ...

  4. 【Python】[模块]使用模块,安装第三方模块

    一个.py文件就称之为一个模块(Model)按目录来组织模块的方法,称为包(Package)每一个包目录下面都会有一个__init__.py的文件内置函数1.使用模块 导入模块 import sys ...

  5. 安装第三方模块方法和requests

    如何安装第三方模块 pip3         pip3 install xxxx          源码         下载,解压         进入目录 python setup.py inst ...

  6. Nginx编译安装第三方模块http_substitutions_filter_module2222

    Nginx编译安装第三方模块http_substitutions_filter_module Rming -- 阅读 安装 Http 编译 module filter nginx 模块 >> ...

  7. Nginx编译安装第三方模块http_substitutions_filter_module

    Nginx编译安装第三方模块http_substitutions_filter_module 分类:服务器技术  作者:rming  时间:-- . >>ngx_http_substitu ...

  8. Anaconda安装第三方模块

    Anaconda安装第三方模块 普通安装: 进去\Anaconda\Scripts目录,conda install 模块名 源码安装: 进去第三方模块目录,python install setup.p ...

  9. nanopi NEO2 学习笔记 2:安装 pip 和 pip 安装第三方模块

    我现在越来越喜欢用python做开发了,特别是知道了python还能用rpi.gpio库操作 NEO2 的 io 口之后,更是激动 在进行一下的操作之前,要先更换国内的 apt arm64 源,并更新 ...

随机推荐

  1. 【2018寒假集训 Day2】【动态规划】钱币兑换(exchange)(自己翻译的2333)

    钱币兑换(exchange) 问题描述: Dave偶然获得了未来几天的美元(dollars)与马克(marks)之间的兑换率.例如Dave开始有100marks,请编写个程序帮助Dave找出最好的买卖 ...

  2. Selenium多层级的iframe中元素的定位

    很多时候我们遇到多层级的iframe就会想各种方法去获取iframe中的元素,但其实很简单就可以做到的,就是一级一级获取就可以了,获取至你需要的那个层级即可,下面看下实际的案例:(转) <fra ...

  3. CentOS6下安装zabbix3.4

    安装环境 系统 Centos6.7,最小化安装 CPU 2核 内存 2G 硬盘 200G IP 192.168.100.168/24 主机名 zabbix Zabbix版本 3.4 数据库 mysql ...

  4. 02-kubeadm初始化Kubernetes集群

    目录 部署 组件分布 部署环境 kubeadm 步骤 基础环境 基础配置 安装基础组件 配置yum源 安装组件 初始化 master 导入镜像 执行命令: 查看组件状态 查看node状态 安装flan ...

  5. Linux机器相互登录

    1周第4次课(3月22日)课程内容: 1.16 Linux机器相互登录 Linux相互登录可以分2种方式,一种为ssh +IP地址,然后输入对应的root密码,一种为密钥验证方式,其中一台机器放公钥, ...

  6. MySQL主从介绍、配置主从、测试主从同步

    6月28日任务 说明:有不少同学不能一次性把实验做成功,这是因为还不熟悉,建议至少做3遍17.1 MySQL主从介绍17.2 准备工作17.3 配置主17.4 配置从17.5 测试主从同步有的同学,遇 ...

  7. solr 的安装和配置

    Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口.用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引:也可以通过Http Get操 ...

  8. SpringBoot源码学习系列之嵌入式Servlet容器

    目录 1.博客前言简单介绍 2.定制servlet容器 3.变换servlet容器 4.servlet容器启动原理 SpringBoot源码学习系列之嵌入式Servlet容器启动原理 @ 1.博客前言 ...

  9. jQuery上拉加载更多

    <header id="header">首 页</header> <section id="main"> <ul id ...

  10. 从零开始openGL—— 二、 基本图形绘制

    前言 这是从零开始openGL系列文章的第二篇,在上篇文章中介绍了基本的环境配置,这篇文章将介绍如何绘制基本图形(圆.三角形.立方体.圆柱.圆锥). 基本框架 下面这里我先给出opengl的3D绘图的 ...