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 ...
随机推荐
- centos7修改系统时间、时区
直接用下面命令直接更换时区 cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
- NPS - 数字化营销 - 净推荐值
在获客成本高涨的时代,拥有一批超级用户,让企业更有本钱专注在提升产品及体验,创造更多的超级用户,形成良性循环.超级用户究竟要如何创造?超级用户可以定义成“忠诚用户当中最忠诚的一群人”,因此创造超级用户 ...
- [原创]Cadence Allegro小技巧之解决Out of date shapes问题
Allegro报错“Dynamic shapes are out of date; please update them. Check for out of date shapes in Setup ...
- 恒生UFX接口引用计数心得
本文介绍在基于恒生T2SDK基础上开发对接UFX柜台时,有关引用计数的一些心得体会. 下面以配置接口和连接接口为例子来介绍,下面是文档介绍: 创建配置接口说明: 3.1.2 创建配置接口(NewCon ...
- Cesium打包命令
package.json中 (1) npm run build Source/Cesium.js 仅是把Cesium源码中一千两百多个js文件做了一下引用,并不会进行打包 所以这个Cesium.js也 ...
- 直播框架ijkplayer
直播框架ijkplayer [如何快速的开发一个完整的iOS直播app](播放篇) ijkplayer ios项目集成(图文详细版) 一步步搭建视频直播系统,基于LFLiveKit+ijkplayer ...
- php 实现一致性hash 算法 memcache
散列表的应用 涉及到数据查找比对,首先考虑到使用HashSet.HashSet最大的好处就是实现查找时间复杂度为O(1).使用HashSet需要解决一个重要问题:冲突问题.对比研究了网上一些字符串哈希 ...
- wpgcms---循环导航
使用wpgcms的时候,在后台设置了导航菜单,那么在前端是如何循环呢? 第一种:简便方法 {% set array = [ {name:'移动APP',icon:'icon-yidongAPP',co ...
- python将字符串类型改成日期类型
将字符串类型的'2019-03-14'改成date类型,如下: import datetime b = datetime.date(*map(int,'2019-03-14'.split('-'))) ...
- unable to create ...erroractionpreference....
Docker on windows 10 can't startup after deleting MobyLinuxVM in Hyper-V manually 重新启动hyper-v就可以解决了