Python常用模块——模块介绍与导入

一、什么是模块?

在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护。

为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少了,很多编程语言都采用这种组织代码的形式。

在Python中,以个.py文件就可以称之为一个模块(Module)。

二、使用模块有什么好处?

1、最大的好处是大大提高了代码的可维护性。其次,编写代码不必从零开始。当一个模块编写完毕,就可以被其他地方引用。我们在编写程序的时候,也经常引用其他模块,包括Python内置的模块和来自第三方的模块。

2、使用模块还可以避免函数名和变量名冲突。每个模块有独立的命名空间,因此相同名字的函数和变量完全可以分别存在不同的模块中,所以,我们自己在编写模块时,不必考虑名字会与其他模块冲突。

三、模块分类

模块分为三种:

1、内置标准模块(又称标准库)执行help("modules’)查看所有python自带模块列表。

2、第三方开源模块,可通过pip install 模块名 联网安装。

3、自定义模块。

四、模块导入&调用

import module_a #导入

from module import xx

from module.xx.xx import xx as rename #导入后重命令

from module.xx.xx import * #导入一个模块下的所有方法,不建议使用

module_a.xxx #调用

注:模块一旦被调用,即相当于执行了另外一个py文件里的代码。

五、自定义模块

这个最简单,创建一个.py文件,就可以称之为模块,就可以在另外一个程序里导入。

六、模块查找路径

你会发现,自己写的模块只能在当前路径下的程序里才能导入,换一个目录再导入自己的模块就报错说找不到了,这是为什么?

这与导入模块的查找路径有关:

import sys

print(sys.path)

输出(注意:上述代码在不同的电脑可能输出的不太一样)

['', '/Library/Frameworks/Python.framework/Versions/3.7/lib/python37.zip', '/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7', '/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/lib-dynload', '/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages']

你导入一个模块时,Python解释器会按照上面列表顺序依次到每个目录下去匹配你要导入的模块名,只要在一个目录下匹配到了该模块名,就立刻导入,不再继续往后找。

注:列表第一个元素为空,即代表当前目录,所以你自己定义的模块在当前目录会被优先导入。

我们自己创建的模块若想在任何地方都能调用,那就得确保你的模块文件至少在模块路径的查找列表中。

我们一般把自己写的模块放在一个带有"site-packages”字样的目录里,我们从网上下载安装的各种第三方的模块一般都放在这个目录。

python用什么来写模块-Python常用模块——模块介绍与导入相关推荐

  1. python必学的模块_Python常用的模块

    模块和包 1.1模块介绍模块定义:一系列功能的集合体 模块使用: import导入模块 或者 from ... import... 导入模块 模块分类:内置模块 自定义模块 第三方模块 模块加载顺序: ...

  2. python的标准类型内建模块有_python的常用内建模块与常用第三方模块

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理 一.常用内置模块 1.datetime Python 提供了一个 time 和 calendar 模 ...

  3. python文件调用python文件_自己写的python文件如何相互调用

    自己写的python文件如何相互调用?Python中的模块库十分常用,对于常用的模块可以自己动手自定义,但是如何进行调用呢? 模块相互调用 同级目录调用时的两种方法import module prin ...

  4. 多元线性回归算法python实现_手写算法-Python代码推广多元线性回归

    1.梯度下降-矩阵形式 上篇文章介绍了一元线性回归,包括Python实现和sklearn实现的实例.对比,以及一些问题点,详情可以看这里: 链接: 手写算法-Python代码实现一元线性回归 里面封装 ...

  5. python读文件和写文件-python开发--从文件中读取数据和写入文件

    #! /usr/bin/env python -*- coding:utf-8 -*- """ @Author:gcan @Email:1528667112@qq.com ...

  6. python数据结构编程_写给Python编程高手之 数据结构

    python视频教程栏目介绍Python编程需要注意的关键点. 如何在列表,字典,集合中根据条件筛选数据 案例:如何在下列列表data中筛选出大于0的数data = [1, -1, 2, 3, 4, ...

  7. 【Python】将xmind写的测试用例转成禅道可导入的excel格式

    xmind转excel的过程 (1).读取xmind中的内容,使用xmindparser第三方库实现xmind内容的读取 (2).将内容进行处理后保存至excel中,而本次使用的是pandas库将内容 ...

  8. 写python笔记本推荐_写个python程序帮你清理垃圾

    起步 知识概要 [临时文件(*.tmp)] [临时文件(*._mp)] [日志文件(*.log)] [临时帮助文件(*.gid)] [磁盘检查文件(*.chk)] [临时备份文件(*.old)] [E ...

  9. python是用c写的吗-python是用c写的吗

    python是用c写的,下面给大家介绍一下Python与c的联系: python的诞生 1991年,第一个Python编译器(同时也是解释器)诞生.它是用C语言实现的,并能够调用C库(.so文件).从 ...

  10. python简介怎么写-python爬虫简历怎么写

    python爬虫简历怎么写? python爬虫简历如下: 1. 基本信息 求职岗位:Python爬虫工程师(全职) 期望薪资:15000以上 姓名:xx 手机号码:xxxx 邮箱:xxxx@qq.co ...

最新文章

  1. Py中enumerate方法【转载】
  2. GridView自定义分页
  3. AAAI 2022 | 基于词对关系建模的统一NER,刷爆14个中英NER数据集
  4. 为什么判断 n 是否为质数只需除到开平方根就行了?(直接证明)
  5. 分布式一致性哈希算法
  6. linux看python包的路径_linux下 彻底修改python的包/模块导入路径
  7. 新概念51单片机C语言教程纠错(1)
  8. Proxy 简答实现 ViewModel 和 View
  9. delphi 判断两个时间差是否在一个指定范围内
  10. php 判断来源 微信客户端_常见WebShell客户端的流量特征及检测思路
  11. 数论入门(基础定义)
  12. 渗透测试:初识Kali之Kali系统安装及基本配置
  13. Unity免费资源汇总
  14. 冰山數據登榜《互联网周刊》2022数据标注公司排行
  15. Oracle自定义函数实现动态参数复制表(使用了自定义type以及pipelined)
  16. 10 16 进制 转换 c语言,求一段 16进制转10进制 C语言代码。 被转换的16进制数是 0x**型,转换后为10进制数。...
  17. iPhone出现白苹果怎么修复?简单3步即可解决
  18. ie浏览器开发比谷歌浏览器_跨浏览器开发:处理IE
  19. win10 自定义右键菜单
  20. Animated之基础篇-概述

热门文章

  1. json对象的封装与解析
  2. Elasticsearch搜索类型(query type)详解
  3. [Offer收割]编程练习赛12 题目1 : 歌德巴赫猜想
  4. hihoCoder 1378 网络流二·最大流最小割定理 (网络流学习#2 记录)
  5. 学习common-upload源码,理解上传原理
  6. (一)Redis初学教程之安装篇
  7. VC 使用 MinGW编写的dll
  8. c#中高效的excel导入oracle的方法
  9. C语言实现的RSA算法程序(使用GMP)
  10. 数学思想 —— 简化问题