模块介绍

模块,是用一些代码实现的某个功能的代码集合。

类似与函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用,提供了代码的重用性和代码间的耦合。对于一个复杂的功能,可能需要多个函数才能完成(函数又可以放在不同的 .py 文件中),多个 .py 文件组成的代码集合就称为模块。

模块分为三种:

  • 自定义模块(自己写的功能)
  • 内置标准模块(又称为标准库,安装Python之后自带的模块)
  • 开源模块(别人写的模块,需要安装之后才可以使用)

开源模块

下载安装有两中方式:

1,使用系统的工具

yum

pip

apt-get

2,下载源代码

下载源码

解压源码

编译源码(python setup.py build)

安装源码(python setup.py install)

注意:

在使用源码安装时,需要使用到gcc编译和python开发环境,所以需要先安装

yum install gcc python-devel

apt-get install python-dev

模块安装成功之后会自动安装到 sys.path 中的某个目录,如:

~/python.x/site-packages/

x 代表python的版本

模块的导入

模块的导入方法

  1. import module
  2. from xxx.xxx.xxx.module import xx
  3. from xxx.xxx.xxx,module import xx as rename
  4. from xxx.xxx.xxx.module import *

说明:

1,第1种方法适用与内置模块或使用模块的代码文件(A)与模块文件(B)在同一个目录,比如:

内置模块

import os

自定义模块

在A.py中写

import B

2,第2,3,4种方法模块在别的目录下目录,在导入时使用 . (点)作为目录的分割

3,第3种方法适用于所需要调用的模块比较长或者难记,这个办法是给模块起一个别名

4,第4中方法使用于把目录下的所有模块都导入

注意:

sys.path 类似系统中的环境变量,在模块导入的时候会检测导入的模块是否存在于这些目录,如果存在就导入,如果不存在则会报错

如果想把模块所在的目录加入到 sys.path 中需要

import sys os

new_path= os.path.abspath('../')

sys.path.append(new_path)

Python之模块介绍的更多相关文章

  1. python multiprocessing模块 介绍

    一 multiprocessing模块介绍 python中的多线程无法利用多核优势,如果想要充分地使用多核CPU的资源(os.cpu\_count\(\)查看),在python中大部分情况需要使用多进 ...

  2. Python day18模块介绍2(使用BASE_DIR修改临时path,os模块)

    1.BASE_DIR修改path(别人导入py项目时不会因为绝对路径无法解释) #sys修改环境变量 #使用BASE_DIR将绝对路径改为相对路径 import sys,os BASE_DIR=os. ...

  3. Python log 模块介绍

    刚用Python log模块写了一个例子,记录一下. import logging import logging.handlers import os from datetime import dat ...

  4. Python—time模块介绍

    time 模块 在平常的代码中,我们常常需要与时间打交道.在Python中,常用的与时间处理有关的模块就包括:time,datetime,下面来介绍time模块. 在开始之前,首先要说明几点: 一.在 ...

  5. python常用模块介绍

    关于if __name__ == "__main__": 若执行文件为bin,调用文件为cal: 若在执行文件bin中执行print(__name__) 输出:__main__ 当 ...

  6. Python os模块介绍

    os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirname") 改变当前脚本工作目录:相当于shell下cd os.curd ...

  7. Python—sys模块介绍

    sys.argv 命令行参数List,第一个元素是程序本身路径 sys.exit(n) 退出程序,正常退出时exit(0) sys.version 获取Python解释程序的版本信息 sys.maxi ...

  8. Python—os模块介绍

    OS模块 我们平时工作中很常用到的一个模块,通过os模块调用系统命令,获得路径,获取操作系统的类型等都是使用该模块.os 模块提供了很多允许你的程序与操作系统直接交互的功能 得到当前工作目录,即当前P ...

  9. Python—randonm模块介绍

    random是python产生伪随机数的模块 >>> random.randrange(1,10) #返回1-10之间的一个随机数,不包括10 >>> random ...

随机推荐

  1. Net中的代码规范工具及使用

    Net中的代码规范工具及使用 https://www.cnblogs.com/selimsong/p/9209254.html 上一篇文章介绍了编码标准中一些常用的工具,本篇就具体来介绍如何使用它们来 ...

  2. CSS -- 未解之疑

    @.css那些事儿 -- 第9章 反馈表单 自己编写了CSS,可是红框中的横线比下面的要粗.对比作者的代码,发现可能与上面标题h3的height和line-height有关,但是不知道具体是为什么? ...

  3. os如何处理键盘的所有按键,显示or不显示,显示是如何显示

    [0]README 0.1) source code and text decription are from orange's implemention of a os , and for comp ...

  4. iOS block-base 动画简单用法+关键帧动画设置线性变化速度的问题

    本文转载至 http://www.tuicool.com/articles/aANBF3m 时间 2014-12-07 20:13:37  segmentfault-博客原文  http://segm ...

  5. Error -27728: Step download timeout (120 seconds)的解决方法(转)

    LR中超时问题解决方法 超时错误在LoadRunner录制Web协议脚本回放时超时经常出现. 现象1:Action.c(16): Error -27728: Step download timeout ...

  6. curl post 请求 es 数据 REST 批量删除

    curl  -d  "keyword=牛" http://api.com/path/index curl模拟http发送get或post接口测试 - 一生守候 - 博客园 http ...

  7. kafka source type

    https://flume.apache.org/FlumeUserGuide.html # example.conf: A single-node Flume configuration # Nam ...

  8. PermissionError: [Errno 13] Permission denied:

    在ubuntu系统下使用pip 命令安装包时,出现以下类似错误提示: PermissionError: [Errno 13] Permission denied: '/usr/local/lib/py ...

  9. webpack热替换原理

    前期准备: const path = require('path'); const HtmlWebpackPlugin= require('html-webpack-plugin'); const C ...

  10. 《CSS权威指南(第三版)》---第二章 选择器

    本章的主要内容是,怎么获取文档中的元素给予渲染: 1.元素选择器: 2.ID选择器: 3.CLSSS选择器: 4.通配选择器:*; 5.属性选择器:selector[] 6.部分属性选择器: sele ...