模块是一个包含所有你定义的函数和变量的文件,其后缀名是.py。模块可以被别的程序引入,以使用该模块中的函数等功能。这也是使用 python 标准库的方法。

1、模块的定义与分类

在python中模块实际上就是一个以 .py 结尾的源码文件。其中模块主要可以分为三种:

  • 一是官方为我们提供的内建的模块
  • 二是我们自己写的自定义的模块
  • 三是其他地方提供的第三方模块

2、模块的导入

使用 import 导入
# 导入模块
import 模块名1,模块名2,...
# 使用模块中的方法等
模块名.函数/类/全局变量

导入第三方 random 模块,使用随机数。

import random
print(random.randint(1,100)) 输出:1-100间的随机数
55

另外,可以给导入的模块取别名,通过别名的方式调用模块中的函数。

import random as rd
print(rd.randint(1,100))
使用 from … import 导入

Python 的 from 语句让你从模块中导入一个指定的部分到当前命名空间中。

from 模块名 import 函数/类/全局变量

这种方式导入的模块可以直接通过函数名调用。(以下的函数代指 模块中的函数/类/全局变量等)

# 导入
from random import randint, randrange
# 使用
print(randint(1,100))

优点:这种方式导入模块后可以不加模块名就可以使用,比较方便。

缺点:如果导入的函数名与当前文件中有重名情况,建议使用第一种导入方式。

通过这种方式导入的函数也可以取别名。

from random import randint as rt, randrange
print(rt(1,10))

另外,还可以通过 from random import *把一个模块的所有内容全都导入到当前的命名空间。这种方式适用于在当前程序中大量的使用到模块中的内容时导入。如果只用很少的一部分内容时不建议这样导入,因为这样会占用一部分内存空间。

两种导入方式各有特点,根据实际情况选择导入方式即可。

导入规则

如果我们在写程序时,需要同时导入三种类型的模块,python 官方给我们的建议是:

  • 先导入内建模块
  • 再导入第三方模块
  • 最后导入自定义模块

3、模块的安装

使用 pip 安装,pip 是通用的 Python 包管理工具。提供了对 Python 包的查找、下载、安装、卸载的功能。

$ pip install package_name		#安装
$ pip search package_name #查找
$ pip show package_name #查看已安装
$ pip uninstall package_name #卸载

可以通过 help 显示帮助命令。

由于某些原因安装可能会出现失败的情况,一般都是 timeout 超时。解决办法呢也很简单。这里给出几种建议:

  1. 手动设置超时时间

    pip install --default-timeout=100 库名
  2. 指定国内镜像源

    pip install -i https://pypi.tuna.tsinghua.edu.cn/simple 库名 #清华的大学的镜像

    -i:指定镜像地址。
  3. 创建或修改pip.conf配置文件指定镜像地址

    以上两种都是临时的,每次安装新命令都要手动输入一大串命令,但是我们也可以把这些信息写入 pip 的配置文件中,这样每次安装的时候就会方便很多。这里不做演示,网上有很多教程。

以下是几个常用国内高速镜像网址:

  • 阿里云 http://mirrors.aliyun.com/pypi/simple/
  • 中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/
  • 豆瓣(douban) http://pypi.douban.com/simple/
  • 清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/
  • 中国科学技术大学 http://pypi.mirrors.ustc.edu.cn/simple/

ps:windows 用户在 cmd 窗口下 执行该操作。步骤分别为组合键win + r打开运行窗口,输入 cmd 回车 进入cmd 命令窗口。如果提示 ‘pip’ 不是内部命令,检查是否把 pip 加入windows 系统环境变量中,具体步骤自行百度。

python学习笔记(五)——模块导入的更多相关文章

  1. python学习笔记五 模块上(基础篇)

    模块学习 模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要 ...

  2. python学习笔记五 模块下(基础篇)

    shevle 模块 扩展pickle模块... 1.潜在的陷进 >>> import shelve>>> s = shelve.open("nb" ...

  3. Python学习笔记之模块与包

    一.模块 1.模块的概念 模块这一概念很大程度上是为了解决代码的可重用性而出现的,其实这一概念并没有多复杂,简单来说不过是一个后缀为 .py 的 Python 文件而已 例如,我在某个工作中经常需要打 ...

  4. python学习笔记:模块——自定义模块的3种导入方式

    一.定义 模块就是用一堆的代码实现了一些功能的代码的集合,通常一个或者多个函数写在一个.py文件里,而如果有些功能实现起来很复杂,那么就需要创建n个.py文件,这n个.py文件的集合就是模块.如果不懂 ...

  5. python学习笔记_week5_模块

    模块 一.定义: 模块:用来从逻辑上组织python代码(变量,函数,类,逻辑:实现一个功能), 本质就是.py结尾的python文件(文件名:test.py,对应模块名:test) 包:用来从逻辑上 ...

  6. Python学习笔记—itertools模块

    这篇是看wklken的<Python进阶-Itertools模块小结> 学习itertools模块的学习笔记 在看itertools中各函数的源代码时,刚开始还比较轻松,但后面看起来就比较 ...

  7. Python学习笔记五

    一. 递归 递归函数: def a (): print ("from b") b() def b(): print("from a ") a() a() 递推和 ...

  8. python学习笔记十——模块与函数

    第五章 模块与函数 5.1 python程序的结构 函数+类->模块              模块+模块->包                 函数+类+模块+包=Python pyth ...

  9. python学习笔记(八)-模块

    大型python程序以模块和包的形式组织.python标准库中包含大量的模块.一个python文件就是一个模块.1.标准模块 python自带的,不需要你安装的2.第三方模块 需要安装,别人提供的. ...

  10. Python学习笔记-常用模块

    1.python模块 如果你退出 Python 解释器并重新进入,你做的任何定义(变量和方法)都会丢失.因此,如果你想要编写一些更大的程序,为准备解释器输入使用一个文本编辑器会更好,并以那个文件替代作 ...

随机推荐

  1. JavaWeb-网络编程

    Java网络编程 推荐阅读: 计算机网络:https://www.cnblogs.com/zwtblog/tag/计算机网络/ 计算机网络基础 利用通信线路和通信设备,将地理位置不同的.功能独立的多台 ...

  2. ROS入门介绍

    1.ROS版本介绍 ROS版本:(已经推出数十个版本) 2013 ------> Hydro 2014 ------> Indigo (对应Ubuntu14.04) (现在已经基本废弃) ...

  3. PromQL全解析

    PromQL(Prometheus Query Language)为Prometheus tsdb的查询语言.是结合grafana进行数据展示和告警规则的配置的关键部分. 本文默认您已了解Promet ...

  4. VirtualBox虚拟机--安装新系统

    问题概述:在VirtualBox虚拟机中使用ISO镜像文件安装新系统. 继在本机系统上学习Python把系统搞坏掉以后,总结教训试新东西还是先在虚拟机上练手. 找同事拷了一个win10系统的ISO镜像 ...

  5. 『现学现忘』Docker基础 — 12、通过RPM软件包方式安装Docker

    CentOS环境下的Docker官方推荐的三种安装方式 yum安装方式 本地RPM安装方式 脚本安装方式 目录 1.下载Docker的RPM安装包 2.安装Docker 3.通过RPM安装包安装Doc ...

  6. php 生成唯一订单号5种方法

    第一种 private function doCreateOrderNumber($time){ $i=1; $dd = date('Ymd',$time); $aa = 'OH'.$dd; $res ...

  7. MySQL8.0降级安装5.7

    本文旨在自我学习使用,如有任何疑问请及时联系博主 前言 基于OpenHarmony的FA数字管家服务端 默认情况下,Ubuntu20.04安装MySQL的版本为8.0.但8.0更加严格的加密规则,使得 ...

  8. 最长公共子串(DP)

    DP基础_最长公共子串 Description 两个序列的最长公共子串,这个子串要求在序列中是连续的.如:"bab"和"caba" (可以看出来最长公共子串是& ...

  9. kubernetes修改ingress默认端口

    kubectl edit daemonset nginx-ingress-controller -n ingress-nginx containers: - args: - /nginx-ingres ...

  10. 使用MariaDB backup恢复主从

    安装 yum install MariaDB-backup 备份命令 工具需要直接操作数据目录,需要在数据库服务器上执行 mariabackup --backup --target-dir=/data ...