模块的概念:一个.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之模块与包的更多相关文章

  1. python学习笔记13(模块、包)

    在Python中有一个概念叫做模块(module),比如在Python中要调用sqrt函数,必须用import关键字引入math这个模块,下面就来了解一下Python中的模块. 模块文件以.py后缀结 ...

  2. 【Python3之模块及包的导入】

    一.模块导入 1.定义 Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句. 模块让你能够有逻辑地组织你的 Python ...

  3. 周末学习笔记——day03(模块,包)

    一,复习 ''' 装饰器 @wraper # fn = wraper(fn) def fn(): pass def wrap(arg): def outer(func): # 可以用arg def i ...

  4. python学习笔记五:模块和包

    一.模块用import导入 cal.py: #!/usr/bin/python def add(x,y): return x+y if __name__ == '__main__': print ad ...

  5. 【Python实战】模块和包导入详解(import)

    1.模块(module) 1.1 模块定义 通常模块为一个.py文件,其他可作为module的文件类型还有".pyo".".pyc".".pyd&qu ...

  6. Python3学习笔记(urllib模块的使用)转http://www.cnblogs.com/Lands-ljk/p/5447127.html

    Python3学习笔记(urllib模块的使用)   1.基本方法 urllib.request.urlopen(url, data=None, [timeout, ]*, cafile=None,  ...

  7. ansible笔记(9):常用模块之包管理模块

    ansible笔记():常用模块之包管理模块 yum_repository模块 yum_repository模块可以帮助我们管理远程主机上的yum仓库. 此处我们介绍一些yum_repository模 ...

  8. Python3 模块与包

    一.模块介绍 什么是模块? 常见的场景:一个模块就是一个包含了一组功能的Python文件,比如spam.py,模块名为spam,可以通过import spam使用. 在Python中,模块的使用方式都 ...

  9. python3 模块和包

    一.模块(Module)和包(Package) 1.模块:一个包含所有你定义的函数和变量的文件,其后缀名是 .py ,一个.py文件就是一个模块 2.包:一定包含 __init__.py模块 的文件夹 ...

随机推荐

  1. 深入讲解 Laravel 的 IoC 服务容器

    众所周知,Laravel 控制反转 (IoC) / 依赖注入 (DI) 的功能非常强大.遗憾的是, 官方文档 并没有详细讲解它的所有功能,所以我决定自己实践一下,并整理成文.下面的代码是基于 Lara ...

  2. Java枚举——枚举的作用、使用方法、使用场景

    枚举的定义 枚举关键字enum 枚举类是一种特殊类,它和普通类一样可以使用构造器.定义成员变量和方法,也可以实现多个接口,但不能继承类. 枚举的使用 enum Color { RED, BLUE, G ...

  3. Elasticsearch系列---分布式架构机制讲解

    概要 本篇主要介绍Elasticsearch的数据索引时的分片机制,集群发现机制,primary shard与replica shard是如何分工合作的,如何对集群扩容,以及集群的容错机制. 分片机制 ...

  4. Redis 4.0鲜为人知的功能将加速您的应用程序

    来源:Redislabs 作者:Kyle Davis 翻译:Kevin (公众号:中间件小哥) Redis 4.0给Redis生态带来了一个惊人的功能:Modules(模块).Modules是Redi ...

  5. Nginx 代理本地文件夹(Windows环境)

    安装环境: win10 nginx-1.17.2 步骤: 一.打开nginx.conf 路径:\nginx-1.17.2\conf\nginx.conf 二.编辑 配置跨域以及代理文件夹路径 三.启动 ...

  6. Linux下为知笔记和蚂蚁笔记测评,推荐蚂蚁笔记!(非广告)

    本人由于学习Linux,需要一款可以在Linux平台下可以运行的一款软件,了解到为知笔记之笔记(下文以W代替)和蚂蚁笔记(下文以M代替)比较出名,由于某云和某象笔记在linux平台下没有对应的软件,所 ...

  7. 同步工具类 CountDownLatch 和 CyclicBarrier

    在开发中,一些异步操作会明显加快执行速度带来更好的体验,但同时也增加了开发的复杂度,想了用好多线程,就必须从这些方面去了解 线程的 wait() notify() notifyall() 方法 线程异 ...

  8. 使用aop加解密http接口

    背景 最近在写一个小程序接口,由于安全性比较高,因此需要给请求参数和响应进行加密处理.如果在每个方法上都加密解密,那样代码就显得太繁琐了而且工作量会加大.所以,我们会统一进行加解密处理,一种比较传统的 ...

  9. 【Android - 自定义View】之自定义View实现“刮刮卡”效果

    首先来介绍一下这个自定义View: (1)这个自定义View的名字叫做 GuaguakaView ,继承自View类: (2)这个View实现了很多电商项目中的“刮刮卡”的效果,即用户可以刮开覆盖层, ...

  10. window.open()打开新窗口 及参数

    在jsp页面中需要使用到弹出窗口,想到js的window对象有一个open方法可以弹出窗口,于是对open方法进行记录. 首先是open方法的语法及定义: 定义: open() 方法用于打开一个新的浏 ...