笔记||Python3之模块与包
模块的概念:一个.py文件就称之为一个模块。
包的概念:把许多个模块按照功能放到不同的目录中来组织模块,这些组织存放模块文件的目录,我们称之为包。
模块与包的优势:1- 方便别人调用
2 - 避免同名变量/函数
3 - 每个模块中的变量名作用域只在本模块中
自定义模块:模块的定义就是创建py文件
模块名 就是py文件名
模块中的标识符可以包含供外部使用
变量(一些常量,比如配置项)
函数(供其他模块调用)
类
*注意*:相同名 ----- 尽量避免同名
别名 ------ 如import test1 as t
很多个 ------ 用逗号隔开,或者分开写import
模块的使用:
1 - 同一包内的调用
import 模块名 ----- 相当于执行了一遍导入的模块
使用变量/函数:import 后面的内容 . 函数/变量
若模块名很长 ----- as 取别名 可以减少字符长度;避免同时导入2个/多个模块里面有同名函数,出现覆盖情况
from 模块名 import 函数/变量 ----- 如 from mathFunction import * <==> import mathFunction
区别:① import xxxx ----- 全部导入
② from 模块 import 函数/变量 ------ 指定内容导入,如果后期有增加的话,再增加import后面的内容
2 - 不同包的调用
如 import testP.pTest testP.pTest.func()
3 - __init__.py模块:①初始化 ②只要你调用这个包,那么该包的__init__.py就会被执行。
标准库的使用:主要包括内置类型和函数,比如len、int、open等;直接使用,无需import。
功能模块:包含程序设计所需的常用的功能,需要用import 导入它们就可使用。
根据文档查看使用细节。
① 不需要程序员去import ---- 直接使用变量和函数 ---- import / open / len
② import time ----- print(time.strftime("%Y_%m_%d %H%M:%S"))
③ 标准库 1 - 内置类型& 内置函数 ---- 直接使用 --- 不需要import
2 - 内置模块 --- 要使用import
from datetime import date
now = date.today()
print(now)
模块搜索规则:
sys.path的值是怎么来的? ------------- 自动加入启动脚本所在的目录
自动加入标准库目录 如:D:\\tools\\python36开头的
PYTHONPATH环境变量里包含的目录。这是一个环境变量设置,若没有设置则忽略 set PYTHONPATH=d:\
lib/site-packages下面.pth文件里指定的路径
1 - import sys ------ sys.path
2 - sys.path ------ 第一个是空地址 ------ 当前目录
增加路径: 1 - import sys 临时的
sys.path.append('g:/file')
2 - cmd --- set PYTHONPATH=g:/file
安装第三方模块:在python中,安装第三方模块,是通过包管理工具pip完成的。
如果你正在使用Mac和Linux,安装pip就可以跳过了。
如果你使用的是windows,在安装python时,确保勾选了pip和Add python.exe to Path
在命令提示符窗口下尝试运行pip,若未收到任何命令,可以重新运行安装程序添加pip
*注意*:在Mac和Linux上有可能并存Python3和Python2,因此对应的pip命令是pip3
相关命令 --
安装(pip使用) -------- pip install selenium
查找pip的路径 ------- where pip
如果直接pip出现什么内部错误,基本上就是环境变量的问题,仔细检查下!!
卸载命令 ----- pip uninstall selenium
指定版本 ----- pip install SomePackage==1.0.4
更新安装 ----- pip install selenium -u
笔记||Python3之模块与包的更多相关文章
- python学习笔记13(模块、包)
在Python中有一个概念叫做模块(module),比如在Python中要调用sqrt函数,必须用import关键字引入math这个模块,下面就来了解一下Python中的模块. 模块文件以.py后缀结 ...
- 【Python3之模块及包的导入】
一.模块导入 1.定义 Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句. 模块让你能够有逻辑地组织你的 Python ...
- 周末学习笔记——day03(模块,包)
一,复习 ''' 装饰器 @wraper # fn = wraper(fn) def fn(): pass def wrap(arg): def outer(func): # 可以用arg def i ...
- python学习笔记五:模块和包
一.模块用import导入 cal.py: #!/usr/bin/python def add(x,y): return x+y if __name__ == '__main__': print ad ...
- 【Python实战】模块和包导入详解(import)
1.模块(module) 1.1 模块定义 通常模块为一个.py文件,其他可作为module的文件类型还有".pyo".".pyc".".pyd&qu ...
- Python3学习笔记(urllib模块的使用)转http://www.cnblogs.com/Lands-ljk/p/5447127.html
Python3学习笔记(urllib模块的使用) 1.基本方法 urllib.request.urlopen(url, data=None, [timeout, ]*, cafile=None, ...
- ansible笔记(9):常用模块之包管理模块
ansible笔记():常用模块之包管理模块 yum_repository模块 yum_repository模块可以帮助我们管理远程主机上的yum仓库. 此处我们介绍一些yum_repository模 ...
- Python3 模块与包
一.模块介绍 什么是模块? 常见的场景:一个模块就是一个包含了一组功能的Python文件,比如spam.py,模块名为spam,可以通过import spam使用. 在Python中,模块的使用方式都 ...
- python3 模块和包
一.模块(Module)和包(Package) 1.模块:一个包含所有你定义的函数和变量的文件,其后缀名是 .py ,一个.py文件就是一个模块 2.包:一定包含 __init__.py模块 的文件夹 ...
随机推荐
- P4-verilog实现mips单周期CPU
最近对学习的掌控可能出现了问题,左支右绌,p2挂了,p2.p3.p4.p5每周在计组花的连续时间少了很多,学习到的东西也少了很多,流水线都还没真正开始写,和别人比落后了一大截,随笔自然就荒废了,我得尽 ...
- nyoj 41-三个数从小到大排序(STL --> sort(a, a+n) 升序)
41-三个数从小到大排序 内存限制:64MB 时间限制:3000ms Special Judge: No accepted:31 submit:44 题目描述: 现在要写一个程序,实现给三个数排序的功 ...
- Windows平台LoadLibrary加载动态库搜索路径的问题
一.背景 在给Adobe Premiere/After Effects等后期制作软件开发第三方插件的时候,我们总希望插件依赖的动态库能够脱离插件的位置,单独存储到另外一个地方.这样一方面可以与其他程序 ...
- Hadoop2.8.2 运行wordcount
1 例子jar位置 [hadoop@hadoop02 mapreduce]$ pwd /hadoop/hadoop-2.8.2/share/hadoop/mapreduce [hadoop@hadoo ...
- scrapy介绍及使用
scrapy的流程 其流程可以描述如下: 调度器把requests-->引擎-->下载中间件--->下载器 下载器发送请求,获取响应---->下载中间件---->引擎-- ...
- 一个自动修正数据时间和补全缺失数据的MapReduce程序
原始数据如下图: 程序: Mapper类: public class DemoMapper extends Mapper<LongWritable,Text,IntWritable,Text&g ...
- Nginx 代理本地文件夹(Windows环境)
安装环境: win10 nginx-1.17.2 步骤: 一.打开nginx.conf 路径:\nginx-1.17.2\conf\nginx.conf 二.编辑 配置跨域以及代理文件夹路径 三.启动 ...
- Centos7 搭建LAMP环境(编译安装)
1.查看系统版本 [niemx@localhost ~]$ cat /etc/redhat-release CentOS Linux release 7.6.1810 (Core) 2.安装软件准备 ...
- python--debug神器pysnooper
使用它你可以获得什么优势: (1)无需用print就可以获得变量的值: (2)以日志地形式进行保存,方便随时查看: (3)可以根据需要,设置调用函数的深度: (4)多个函数的日志,可以设置前缀进行标识 ...
- 设计模式——代理模式(Proxy)
定义 为其他对象提供一种代理,以控制对这个对象的访问.代理对象在客户端和目标对象之间起到中介的作用.(结构型) 如果不知道代理模式,可能大家对代理服务器都不叫熟悉.代替服务器代替请求者去发一起对另一个 ...