模块介绍

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

类似与函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用,提供了代码的重用性和代码间的耦合。对于一个复杂的功能,可能需要多个函数才能完成(函数又可以放在不同的 .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. HDFS源码分析之UnderReplicatedBlocks(二)

    UnderReplicatedBlocks还提供了一个数据块迭代器BlockIterator,用于遍历其中的数据块.它是UnderReplicatedBlocks的内部类,有三个成员变量,如下: // ...

  2. Gmail上不去怎么办?

    近期非常多人反映Gmail上不去.每到重大政治事件附近,国家的防火墙就会加固一些. 事实上仅仅要下一个软件就能够轻松解决Google.Gmail上不去的问题. 下载地址 下载解压后点击"我要 ...

  3. swift基础教程笔记

    http://www.imooc.com/learn/127 <玩儿转swift> 慕课网教程笔记,自己根据2.1的语法做了更新. I. 1.通过playground来学习.熟悉swift ...

  4. python使用模板手记

    1.首先是$符号 在webpy中,模板html里面可以写python代码,但要用$开始.但如果网页代码本来就有$符号(javascript或者正则表达式),我们需要对其进行转意.用$$代替$ 给jqu ...

  5. maven scope runtime

    https://blog.csdn.net/ningbohezhijunbl/article/details/25818069 There are 6 scopes available: compil ...

  6. MessageDigest和DigestUtils加密算法

    总结:使用DigestUtils的方法加密的结果与messageDigest的方法加密结果一致,可使用DigestUtils替换MessageDigest 可省掉部分代码  package com.a ...

  7. JavaScript library of crypto standards. 看源码

    crypto-js - npm https://www.npmjs.com/package/crypto-js crypto-js/docs/QuickStartGuide.wiki <wiki ...

  8. 7 Types of Regression Techniques

    https://www.analyticsvidhya.com/blog/2015/08/comprehensive-guide-regression/ What is Regression Anal ...

  9. Kubernetes TensorFlow 默认 特定 集群管理器

    Our goal is to foster an ecosystem of components and tools that relieve the burden of running applic ...

  10. Python解释器是单线程应用 IO 密集型 计算密集型 GIL global interpreter lock

    [Python解释器是单线程应用] [任意时刻,仅执行一个线程] 尽管Python解释器中可以运行多个线程,但是在任意给定的时刻只有一个线程会被解释器执行. [GIL锁 保证同时只有一个线程运行] 对 ...