python学习笔记(五)——模块导入
模块是一个包含所有你定义的函数和变量的文件,其后缀名是.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 超时。解决办法呢也很简单。这里给出几种建议:
- 手动设置超时时间
pip install --default-timeout=100 库名 - 指定国内镜像源
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple 库名 #清华的大学的镜像
-i:指定镜像地址。 - 创建或修改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学习笔记(五)——模块导入的更多相关文章
- python学习笔记五 模块上(基础篇)
模块学习 模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要 ...
- python学习笔记五 模块下(基础篇)
shevle 模块 扩展pickle模块... 1.潜在的陷进 >>> import shelve>>> s = shelve.open("nb" ...
- Python学习笔记之模块与包
一.模块 1.模块的概念 模块这一概念很大程度上是为了解决代码的可重用性而出现的,其实这一概念并没有多复杂,简单来说不过是一个后缀为 .py 的 Python 文件而已 例如,我在某个工作中经常需要打 ...
- python学习笔记:模块——自定义模块的3种导入方式
一.定义 模块就是用一堆的代码实现了一些功能的代码的集合,通常一个或者多个函数写在一个.py文件里,而如果有些功能实现起来很复杂,那么就需要创建n个.py文件,这n个.py文件的集合就是模块.如果不懂 ...
- python学习笔记_week5_模块
模块 一.定义: 模块:用来从逻辑上组织python代码(变量,函数,类,逻辑:实现一个功能), 本质就是.py结尾的python文件(文件名:test.py,对应模块名:test) 包:用来从逻辑上 ...
- Python学习笔记—itertools模块
这篇是看wklken的<Python进阶-Itertools模块小结> 学习itertools模块的学习笔记 在看itertools中各函数的源代码时,刚开始还比较轻松,但后面看起来就比较 ...
- Python学习笔记五
一. 递归 递归函数: def a (): print ("from b") b() def b(): print("from a ") a() a() 递推和 ...
- python学习笔记十——模块与函数
第五章 模块与函数 5.1 python程序的结构 函数+类->模块 模块+模块->包 函数+类+模块+包=Python pyth ...
- python学习笔记(八)-模块
大型python程序以模块和包的形式组织.python标准库中包含大量的模块.一个python文件就是一个模块.1.标准模块 python自带的,不需要你安装的2.第三方模块 需要安装,别人提供的. ...
- Python学习笔记-常用模块
1.python模块 如果你退出 Python 解释器并重新进入,你做的任何定义(变量和方法)都会丢失.因此,如果你想要编写一些更大的程序,为准备解释器输入使用一个文本编辑器会更好,并以那个文件替代作 ...
随机推荐
- Qt:使用SqlQuery进行查询时size总是-1
原因:SQL语句没有符合格式,特别是在换行写一个SQL语句时,不同行之间没有写空格
- k8s-coredns 介绍和部署
1.k8s-coredns 实现了集群内部通过服务名进行可以访问.添加服务后,会自动添加一条解析记录 cat /etc/resolv.conf nameserver 10.0.0.2 search k ...
- .Net/C#分库分表高性能O(1)瀑布流分页
.Net/C#分库分表高性能O(1)瀑布流分页 框架介绍 依照惯例首先介绍本期主角:ShardingCore 一款ef-core下高性能.轻量级针对分表分库读写分离的解决方案,具有零依赖.零学习成本. ...
- 【spring源码系列】之【Bean的销毁】
以"冬奥之光,多彩冰灯"为主题的第四十一届全国专业冰雕比赛在冰城哈尔滨市进入第二天,60名冰雕高手在哈尔滨冰灯艺术游园会园区展开激烈的竞技比拼. 冰雕艺术 1. 概述 Bean的销 ...
- Ajax的疑难杂种详解
跨域问题 如图所示,这是通过jquery封装的ajax请求了一个本地的php文件(无框架),console提示CORS策略已阻止"来自来源"的"null":请求 ...
- C++_Leecode1 两数之和
一.题目介绍 1.题目描述 ->给定一个整数数组nums和一个整数目标值target,请你在该数组中找出和为目标值的那两个整数,并返回它们的数组下标. ->你可以假设每种输入只会对应一个答 ...
- Xmake 和 C/C++ 包管理
Xmake 是一个基于 Lua 的轻量级跨平台构建工具,关于 Xmake 与构建系统的介绍,我们已经在之前的文章中做了详细的介绍:C/C++ 构建系统,我用 xmake. 如果大家已经对 Xmake ...
- 禁用 Windows 共享服务,释放 445 端口
禁用 Windows 共享服务,释放 445 端口 转载自:https://blog.csdn.net/liu857279611/article/details/71786068 在 Window ...
- mysql 锁表
mysql 查看锁表解锁-- 查看那些表锁到了show OPEN TABLES where In_use > 0;-- 查看进程号show processlist;--删除进程 kill 108 ...
- Java基础——方法重写
什么是方法重写? 子类中出现和父类中完全一样的方法声明 什么时候可以进行方法重写? 在子类需要父类的功能的同时,功能主体子类有自己的特有内容时,可以重写,一面沿袭了父类的功能一面又定义了子类特有的内容 ...