返回顶部
首页 > 资讯 > 后端开发 > Python >#14 Python模块
  • 329
分享到

#14 Python模块

模块Python 2023-01-30 23:01:47 329人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

前言 前面的文章中,有许多地方都用到了python的模块,这个到底是个什么神奇的东西呢?让我们来一起盘它! 一、什么是模块 在前几节中,我们已经接触了一些模块:math、random、time等,它们为什么是模块,什么是模块呢? 其实模块

前言

前面的文章中,有许多地方都用到了python的模块,这个到底是个什么神奇的东西呢?让我们来一起盘它!

一、什么是模块

在前几节中,我们已经接触了一些模块:math、random、time等,它们为什么是模块,什么是模块呢?

其实模块就是一个Python文件,一个.py结尾的Python文件。听到这里,萌新肯定蒙圈了,那岂不是我写的每一个Python文件都是模块了?没错!当一段代码需要被重复利用时,你就可以将其作为模块来使用,优点如下:

  • 模块让你更有逻辑的组织你的代码块

  • 将代码写成模块可以是代码重复利用

二、使用模块

Python中有许多内置模块,我们以math模块为例来介绍如何使用模块

1.直接导入   import

导入math模块

In [1]: import math        # 导入math模块

In [2]: math.sin(30)       # 使用模块包含的方法是用  模块.方法 
Out[2]: -0.9880316240928618

In [3]: math.cosh(60)   
Out[3]: 5.710036949078421e+25

In [4]: math.sin(1)
Out[4]: 0.8414709848078965

2.间接导入    from......import......

导入math模块的sin方法

In [1]: from math import sin   # 只导入math模块的sin方法

In [2]: sin(30)                # 使用时直接用方法名即可
Out[2]: -0.9880316240928618

In [3]: math.sin(30)           # 这种方法是错误的
---------------------------------------------------------------------
NameError                           Traceback (most recent call last)
<ipython-input-3-9c4797948dd7> in <module>
----> 1 math.sin(30)

NameError: name 'math' is not defined

导入math模块的sin和cos方法

In [9]: from math import sin, cos   # 将导入的多个方法用逗号隔开即可

导入math模块的全部方法

In [4]: from math import *   # 使用Python中的通配符 * 即可导入math模块的全部方法

In [5]: sin(30)              # 使用时也是直接用方法名
Out[5]: -0.9880316240928618

In [6]: cos(30)              # 可以看到math中所有的方法都可以用了
Out[6]: 0.15425144988758405

In [7]: sqrt(4)
Out[7]: 2.0

3.非标准模块的导入     from 路径 import 方法

有时可能需要导入的方法不是标准模块(系统内置模块称为标准模块),可能在其他地方,导入方法有绝对路径和相对路径导入两种,先来弄清绝对路径和相对路径:

绝对路径:从盘符开始的路径,比如C文件在E盘中的A文件夹下的B文件夹中,那么C文件的绝对路径为:E:\A\B\C

相对路径:从当前目录开始的路径,比如我现在在B文件夹中,那么C文件的相对路径为:.\C ,在相对路径的表示中,.代表当前目录,..代表上级目录

绝对路径导入:

In [10]: from E:/A/B/C import a   # Python中使用/作为路径分隔符

上面这段代码的解释:导入E盘A文件夹下的B文件夹中的C文件的a方法

使用绝对路径将其导入的方法为 from 文件的绝对路径 import 文件的方法 

相对路径导入:

In [11]: from ./C import a

上面这段代码的解释:导入当前目录下的C文件中的a方法

使用相对路径将其导入的方法为 from 文件的相对路径 import 文件的方法 

三、安装第三方模块

1.使用源码安装

第一步:下载安装setuptools模块,下载地址为                       setuptools-40.7.3.zip                     ,之后解压后,在当前路径的命令行下输入 python setup.py install ,等待安装完毕

第二步:下载想要安装模块的源代码,大多数模块都可以在官网找见:https://pypi.org,下载源码后解压,在当前路径的命令行下输入 python setup.py install ,等待安装完毕,如果出现依赖问题,则安装提示先安装依赖模块,直到安装成功

第三步:验证是否安装成功,打开IPython的交互界面,输入 import 模块名验证,如不报错则安装成功

注意:想要使用源码安装,必须安装第一步的setuptools模块

2.使用pip安装(推荐使用pip安装)

通常在安装完python3以后会自动将pip安装完毕,先来验证下,在命令行输入pip --version,如果输入pip版本等信息,则证明拥有pip,否则请安装源码安装的方式安装pip

第一步:在命令行中输入 pip install 模块名 ,之后pip会自动下载并安装模块,等待安装完毕

第二步:验证是否安装成功,打开IPython的交互界面,输入 import 模块名验证,如不报错则安装成功

注意:如果安装完pip后,在命令行输入pip --version后显示没有这个命令,则需要将pip加入环境变量

3.使用包管理工具安装(linux平台、Mac平台)

在Linux平台下,Centos使用yum,ubuntu使用apt-get

在Mac平台下,使用HomeBrew包管理工具

四、自己编写模块

在Python中,我们自己也是可以编写模块的。

自己写一个speak模块,里面有chinese和english两种方法,在run.py文件中调用这两种方法:

1 # speak.py
2 # speak模块
3 
4 def chinese():
5     print('我是小绵羊')
6 
7 
8 def english():
9     print('I am MinuteSheep')
1 # run.py
2 # run.py与speak.py在同一目录下
3 
4 import speak
5 
6 speak.english()
7 speak.chinese()
1 # 运行结果
2 
3 I am MinuteSheep
4 我是小绵羊

目录图片:

 

--结束END--

本文标题: #14 Python模块

本文链接: https://lsjlt.com/news/181038.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • #14 Python模块
    前言 前面的文章中,有许多地方都用到了Python的模块,这个到底是个什么神奇的东西呢?让我们来一起盘它! 一、什么是模块 在前几节中,我们已经接触了一些模块:math、random、time等,它们为什么是模块,什么是模块呢? 其实模块...
    99+
    2023-01-30
    模块 Python
  • python高级-模块(14)
    一、python中的模块 有过C语言编程经验的朋友都知道在C语言中如果要引用sqrt函数,必须用语句#include <math.h>引入math.h这个头文件,否则是无法正常进行调用的。 那么在Python中,如果要引用一些...
    99+
    2023-01-31
    模块 高级 python
  • Python模块:time模块
    time模块:python中处理时间的基础模块,有时间戳,元组,自定义,三种时间表现形式。python中时间戳的值是以1970年1月1日0点开始计算的,单位是秒。时间戳:就是两个时间差的数值。时区:传说中在开发服务器/客户端程序时,时区不一...
    99+
    2023-01-31
    模块 Python time
  • python模块:smtplib模块
    1.使用本地的sendmail协议进行邮件发送格式(1):smtpObj=smtplib.SMTP([host [,port [,local_hostname]]])host:SMTP服务器主机的IP地址或者是域名port:服务的端口号(默...
    99+
    2023-01-31
    模块 python smtplib
  • python模块学习----nmap模块
    安装nmap模块:pip install python_nmanmap模块说明:python-nmap是一个帮助使用nmap端口扫描器的python库。它允许轻松操纵nmap扫描结果,并且将是一个完美的选择,为需要自动完成扫描任务的系统管理...
    99+
    2023-01-31
    模块 python nmap
  • 使用Python模块:struct模块
    Python没有提供直接的将用户定义的数据类型和文件IO关联起来的功能,但是它提供了struct库(是一个内置库)——我们可以以二进制模式来写这些数据(有趣的是,它真的是设计来讲文本数据写为缓存的) 1)bytes、str...
    99+
    2023-01-31
    模块 Python struct
  • python加密模块-hashlib模块
    hashlib模块 用于加密相关的操作,3.X里代替了md5模块和sha模块,主要提供SHA1,SHA224,SHA256,SHA384,SHA512,MD5算法 (sha比md5 更复杂、md5 不能反解) 具体应用:用于网站防篡改。具...
    99+
    2023-01-31
    模块 python hashlib
  • python 模块
    python的模块分为2种:1.标准库(不需要安装,直接导入就可以使用的)2.第三方库(必须要手动安装的)先来介绍2个标准库:sys和os#!/usr/bin/env python# coding: utf-8...
    99+
    2023-01-30
    模块 python
  • Python模块
    初步认识 安装完python后,python自带一部分模块,自带的模块又称作内置模块。其中一部分模块在路径Lib下。(这里的文件夹可以看做包,可以把多个模块放进一个包里) 从模块的来源来讲,可以分三种:内置模块、自定义模块(自己定义的)...
    99+
    2023-01-30
    模块 Python
  • python-模块
    一:模块的基本认识: 内置模块 内置模块是python自带的功能,在使用内置模块相应功能时,需要先导入再使用    第三方模块 下载-->安装-->使用 1.找到python所在的根目录-->再找到Scrip...
    99+
    2023-01-31
    模块 python
  • python - 模块
    参考:https://www.cnblogs.com/nulige/p/6166205.html一、模块介绍Python Module(模块),就是一个保存了Python代码的文件。模块能定义函数,类和变量。模块里也能包含可执行的代码。文件...
    99+
    2023-01-31
    模块 python
  • python常见模块之OS模块和time模块
    一、OS模块概述 Python OS模块包含普遍的操作系统功能。如果你希望你的程序能够与平台无关的话,这个模块是尤为重要的。 二、常用方法 三、OS模...
    99+
    2024-04-02
  • Python中的sys模块、random模块和math模块
    一、sys运行时环境模块 sys模块负责程序与python解释器的交互,提供了一系列的函数和变量,用于操控python的运行时环境。 用法: sys.argv:命令行参数List,第...
    99+
    2024-04-02
  • Python基础之hashlib模块subprocess模块logging模块
    目录一、hashlib模块基本操作与用法二、subprocess模块简介基本操作与用法三、logging模块简介基本操作与用法一、hashlib模块 什么是哈希模块: hashlib...
    99+
    2024-04-02
  • python数学模块(math/decimal模块)
    目录一, math模块2. math库常用函数3.math库使用示例二, decimal模块1. 什么时候使用decimal2. 使用decimal3. decimal使用示例一, ...
    99+
    2024-04-02
  • Python时间模块之datetime模块
    目录 简介 函数介绍及运用 date:日期类 1.获取当前时间  2.日期对象的属性 3.date类中时间和时间戳的转换: 4.修改日期使用replace方法  time:时间类  time类操作 datetime:日期时间类 timede...
    99+
    2023-09-12
    python datetime python 日期时间
  • Python模块学习之IPy模块
    IP地址规划是网络设计中非常重要的一个环节,规划的好坏会直接影响路由协议算法的效率,包括网络性能、可扩展性等方面,在这个过程当中,免不了要计算大量的IP地址,包括网段、网络掩码、广播地址、子网数、IP类型等。Python提供了一个强大的第...
    99+
    2023-01-31
    模块 Python IPy
  • 【Python模块】Python UUI
    uuid是128位的全局唯一标识符(univeral unique identifier),通常用32位的一个字符串的形式来表现。有时也称guid(global unique identifier)。python中自带了uuid模块来进行u...
    99+
    2023-01-31
    模块 Python UUI
  • python elasticsearch_dsl模块
    python elasticsearch_dsl模块 在整理elasticsearch_dsl模块过程中,着实让我头大。 个人感觉就是资料太少而且很乱,不成体系,接口很多,没有规范。 此文凑合着看,以后有时间后加以修改。 还有一些部分...
    99+
    2019-05-28
    python elasticsearch_dsl模块
  • Python OS 模块
    1、os 模块 OS 模块(operating system),意为操作系统,是 python 处理文件系统的常用模块,因为 python 是跨平台的,所以使用 os 模块,不用担心操作系统使用什么模...
    99+
    2023-09-06
    python 开发语言
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作