Python记录10:模块
'''
1. 什么是模块
模块就一系列功能的集合体
模块有三种来源:
1. 内置的模块
2. 第三方的模块:pip
install +模块名称
3. 自定义模块
模块分为四个通用类别
1 使用python编写的.py文件
2 已被编译为共享库或DLL的C或C++扩展
3 把一系列模块组织到一起的文件夹(注:文件夹下有一个__init__.py文件,该文件夹称之为包)
4 使用C编写并链接到python解释器的内置模块
2. 为何要用模块
1. 使用内置模块与第三模块的好处是: 拿来主义,可以极大地提升开发效率
2. 自定义模块的好处:将程序各部分组件共用的功能放到一个模块里,可以减少代码冗余,提升程序的可维护性
3. 如何用模块
其余笔记见run.py
'''
# import time
# # print(time)
#一 import导入模块
# 首次导入模块发生三件事:
# 1. 先创建一个模块的名称空间
# 2. 运行模块对应的spam.py,将运行过程中产生的名字都丢到模块的名称空间
# 3. 在当前执行文件中拿到一个名字spam,该名字就是指向模块的名称空间
# 注意:之后的导入都是直接引用首次导入的成果
# x=111
# import spam
# print(spam.money)
# print(spam.read1)
# print(spam.read2)
# print(spam.change)
# money=111111111111111111
# spam.read1()
# def read1():
# print('from run.py')
# spam.read2()
# money=111111
# spam.change()
# print(money)
# import spam as sm
# print(sm.money)
# import导入模块的
# 优点:不会与当前执行文件中的名字冲突
# 缺点:必须加上前缀spam.
# import spam
# money=111111111111111111111111111111111111111111111
# print(money)
# print(spam.money)
# import os,time,spam
#二 from...import...导入模块
# 首次导入模块发生三件事:
# 1. 先创建一个模块的名称空间
# 2. 运行模块对应的spam.py,将运行过程中产生的名字都丢到模块的名称空间
# 3. 在当前执行文件中拿到一个名字money,该名字就是指向模块的名称空间中的那个money
# x=111
# money=222222222222222222
# from spam import money
#
# print(money)
# from...import...导入模块的
# 优点:不用加上前缀,代码更精简
# 缺点:容易当前执行文件中的名字冲突
# money=111111111
# from spam import money as m
# print(m)
# print(money)
# from spam import money,read1,read2,change
# print(money)
# print(read1)
# print(read2)
# print(change)
# money=222222222222222222
# read1()
# def read1():
# print('from run.py')
# read2()
#
# from spam import *
# print(money)
# print(read1)
# print(read2)
# print(change)
#查找模块的搜索路径,优先级如下:
# 1. 内存已经有的模块
# 2. 内置模块
# 3. sys.path:第一个值就是当前执行文件所在的文件夹 # import sys
# print(sys.path)
# import spam # import time
# import spam
# print(spam.money)
# time.sleep(10)
# import spam
# print(spam.money) # import time
# print(time) import sys
sys.path.append(r'D:\周末三期\day05\aaa')
import spam
print(spam.money) # from aaa import spam
# print(spam.money)
Python记录10:模块的更多相关文章
- 【循序渐进学Python】10.模块和包
1.导入模块 任何Python程序都可以作为模块导入,只要Python解释器能找到我们定义的模块所在位置即可,一般来讲,在一个模块被导入时,Python解释器会按照下面的步骤进行搜索: 在当前所在目录 ...
- Python记录_day21 模块
引入模块的方式: 1. import 模块 2. from xxx import 模块 一.collections 模块 1.Counter() counter是一个计数器,主要用来计数,计算一个字符 ...
- python记录day24 模块的语法
使用模块的两种方式: import xxx from xxx import xxx 使用模块的优点: 1.实现代码的重用 2.可以把代码分类 一.import 导入模块的时候系统会做三件事 1.先去s ...
- python记录_day23 正则表达式 re模块
一. 正则表达式 使用python的re模块之前应该对正则表达式有一定的了解 正则表达式是对字符串操作的一种逻辑公式.我们一般使用正则表达式对字符串进行匹配和过滤. 正则的优缺点: 优点:灵活, 功能 ...
- [19/10/16-星期三] Python中的模块和包、异常、操作文件
一.模块 # 模块(module) # 模块化,模块化指将一个完整的程序分解为一个一个小的模块 # 通过将模块组合,来搭建出一个完整的程序 # 不采用模块化,统一将所有的代码编写到一个文件中 # 采用 ...
- 学习PYTHON之路, DAY 6 - PYTHON 基础 6 (模块)
一 安装,导入模块 安装: pip3 install 模块名称 导入: import module from module.xx.xx import xx from module.xx.xx impo ...
- Python之logging模块
一.引言 之前在写一些小程序的时候想把日志内容打到文件中,所以就自己写了一个logger.py的程序,如下: #!/usr/bin/python # -*- coding=utf-8 -*- impo ...
- Python 利用pytesser模块识别图像文字
使用的是python的pytesser模块,原先想做的是图片中文识别,搞了一段时间了,在中文的识别上还是有很多问题,这里做记录分享. pytesser,OCR in Python using the ...
- Python的regex模块——更强大的正则表达式引擎
Python自带了正则表达式引擎(内置的re模块),但是不支持一些高级特性,比如下面这几个: 固化分组 Atomic grouping 占有优先量词 Possessive quantifi ...
随机推荐
- 关系数据库(RDBMS)小记
关系数据库三个范式 三个范式: 第一范式(1NF):数据表中的每一列(每个字段)必须是不可拆分的最小单元,也就是确保每一列的原子性 这里说的不可拆分通常是放在业务背景下而言的,是否可拆分视业务需求而定 ...
- 利用final定义方法:这样的方法为一个不可覆盖的方法。
常量(这里的常量指的是实例常量:即成员变量)赋值: ①在初始化的时候通过显式声明赋值.Final int x=3: ②在构造的时候赋值. 局部变量可以随时赋值. 利用final定义方法:这样的 ...
- ASP.NET Web Forms - 网站导航(Sitemap 文件)
[参考]ASP.NET Web Forms - 导航 ASP.NET 带有内建的导航控件. 网站导航 维护大型网站的菜单是困难而且费时的. 在 ASP.NET 中,菜单可存储在文件中,这样易于维护.文 ...
- ubuntu14.04安装MATLAB R2017b步骤详解
转载:https://blog.csdn.net/qq_32892383/article/details/79670871 1. 前言最近由于项目原因,需要在ubuntu上安装MATLAB,在网上找了 ...
- WPS 关闭 wpscenter.exe 服务
1.Ctrl + Shift + Esc 打开任务管理,结束wps相关的进程 2.新建文本文件,并命名为:wpscenter.exe 3.重命名 C:\Program Files1\WPS Offic ...
- opencv3 图像处理(一)图像缩放( python与c++ 实现)
opencv3 图像处理 之 图像缩放( python与c++实现 ) 一. 主要函数介绍 1) 图像大小变换 Resize () 原型: void Resize(const CvArr* src,C ...
- mock---前端搭建模拟服务
在做前端开发接口的时候,往往接口都是从后端来的,这让前端很苦恼,但是有了 MockServer ,前端也可以搭建API服务了. server-mock是什么? 是一款nodejs的应用,用于搭建web ...
- php跨域发送请求原理以及同步异步问题
<script async type="text/javascript" src="http://lisi.com/data.php?flag=1"> ...
- 为 git设置代理
普通设置 git config --global http.proxy 'socks5://127.0.0.1:1080'git config --global https.proxy 'socks5 ...
- python全栈开发 * 23 面向对象 知识点汇总 * 180704
23 面向对象 -----特殊方法 1. isinstance(obj,类名) 判断对象是否是此类实例化或者此类的子类实例化出来的class A:passclass B(A):passb1=B()pr ...