python_模块
1. 模块的导入
(1) python中import module时,系统通常在哪些路径下面查找模块?
在以下的路径查找模块:sys.path
如果你模块所在的目录,不在sys.path的目录下,可以通过以下的方式进行设置(win7):
a). 点击“计算机”->"属性"->"高级系统设置"->"环境变量"
b). path变量中,加入模块所在的目录
(2) python中import module多次,系统仅进行一次导入module的操作,此导入主要是为了定义变量、函数、类
(3) reload被认为是重新导入模块和第一次进行import module的功能一样
2. 为什么要进行模块化
为了代码的可重用性,将代码实现模块化
3. 如何知道模块包含哪些函数和类
个人觉得:最好查询API文档
4. 模块中常用的几个属性:
__name__
作用:告知模块本身作为程序运行还是导入到其他程序
(主要用于在代码中写入测试代码。运行代码时,直接运行测试代码;导入时,可选择是否运行测试代码)
示例:
hello.py的代码
def hello():
print "Hello world!" #用于测试代码的正确性
def test():
hello() #运行hello.py文件时,系统直接运行此代码
if __name__ == "__main__":
test()
运行结果:

test.py的代码(导入hello.py模块)
#coding:utf-8 from hello import * hello() #也可直接调用测试代码
test()
运行结果:

__doc__
作用:获取函数、类或者模块的文档信息
示例:
代码:
def hello():
'the function is print "hello world!"'
print "hello world"
运行结果:

__file__
作用: 查看模块的源代码的路径
示例:

__all__
作用:用于模块导入时限制
from 模块 import * :只能使用__all__中设置的函数
示例:
hello.py的代码
__all__ = ["a"] def a():
print "a" def b():
print "b"
test.py的代码(导入hello模块):
#coding:utf-8 from hello import * a()
#此时的b函数是未导入的,系统会报错
b()
运行结果:

5. 常用的模块
sys:
功能:
访问与python解释器紧密联系的变量和函数。
常用的函数和变量:
(1)exit([arg])
退出当前的程序。默认情况下,arg为0,表示成功退出。
(2)path
查找模块所在目录的目录名列表
(3)stdin、stdout、stderror
标准输入、标准输出、标准错误(python利用stdin获得输入,stdout输出)
(3)setdefaultencoding(name)
设置解释器的编码
(4)getdefaultencoding()
获取解释器的编码,解释器默认的编码为ASCII
time:
功能:
获取当前时间、操作时间、日期、从字符串读取时间以及格式化时间为字符串
常用的函数:

(1) time()
获取当前时间(新纪元开始后的秒数,以UTC为准)
(2) localtime([secs])
将秒数转换为日期元组
(3) mktime(t)
将日期元组转换为秒数
(4)strftime(format[, t])
将日期元组转换为格式字符串
(5)strptime(string[, format])
将格式字符串转换为日期元组
示例:
#coding:utf-8 from time import * print u"获取本地时间(新纪元开始后的秒数):"
curtime = time()
print curtime print u"将秒数转换为日期元组:"
dateTuple = localtime(curtime)
print dateTuple print u"将日期元组转换为秒数:"
print mktime(dateTuple) print u"将日期元组格式化字符串:"
strFormate = "%y-%m-%d %H:%M:%S %w"
strTime = strftime(strFormate, dateTuple)
print " " + strTime print u"将格式化字符串转换为日期元组:"
print strptime(strTime, strFormate)
运行结果:

random
功能:
返回随机数
常用的函数:
(1) random()
返回[0,1)之间的随机实数
(2) uniform(a, b)
返回[a, b)之间的随机实数
(3) randrange([start], stop, [step])
返回randrange(start, stop, step)中的随机数
(4) choice(seq)
从序列seq中返回随机的元素
(5) sample(seq, n)
从序列中选择n个随机且独立的元素
python_模块的更多相关文章
- Python_模块介绍
模块:一组或者一个.py文件实现了某个功能的代码集合 模块分为三种: 自定义模块 内置标准模块(又称标准库):Python自带的模块 开源模块:自己写的模块,有可以供人使用的功能 开源模块的集散地:P ...
- 零基础学习python_模块(50-52课)
今天学了下模块,那什么是模块呢?其实我们写的以py结尾的一个文件就是一个模块,模块也就是程序 还记得我们之前学过容器.函数.类吧 容器 -> 数据的封装 函数 -> ...
- python_模块学习
'''import sysprint(sys.path) #打印环境变量 #运行结果为:['D:\\PyCharm Community Edition 2018.2.2\\NewYear\\untit ...
- Python_模块的定义与使用
1.模块的定义: 1.1 标准格式: import 模块名 模块名.函数名(实参列表) 1.2 特殊格式: from 模块名 import 函数名1,函数名2... 函数名(实参列表) 2.模块的使用 ...
- python_模块2
1.sys模块 import sys # 获取一个值的应用计数 a = [11,22,33] b = a print(sys.getrefcount(a)) # python默认支持的递归数量 v1 ...
- python_模块1
1.将指定的字符串进行加密 # 导入模块 import hashlib def get_md5(data): # 获取hashlib模块中的md5加密算法 obj = hashlib.md5() # ...
- python_模块 collections,random
collections模块 在内置数据类型(dict.list.set.tuple)的基础上,collections模块还提供了几个额外的数据类型:Counter.deque.defaultdict. ...
- python_模块 hashlib ,configparser, logging
hashlib模块 算法介绍 Python的hashlib提供了常见的摘要算法,如MD5,SHA1等等. 什么是摘要算法呢?摘要算法又称哈希算法.散列算法.它通过一个函数,把任意长度的数据转换为一个长 ...
- python_ 模块 json pickle shelve
一,什么是模块? 常见的场景:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. 但其实import加载的模块分为四个通用类别: 1 使用python编写的代码( ...
随机推荐
- Trie
字典树 class Trie { public: Trie() { root = new Node(); } ~Trie() { destroy(root); } void insert(string ...
- 《你不知道的JavaScript》读书笔记(一)作用域
名词 引擎:从头到尾负责整个 JavaScript 程序的 编译 及 执行 过程. 编译器:负责 语法分析 及 代码生成. 作用域:负责收集并维护由所有声明的标识符(变量)组成的一系列查询,并实施一套 ...
- Nginx 笔记与总结(15)nginx 实现反向代理 ( nginx + apache 动静分离)
在 nginx 中,proxy 用来实现反向代理,upstream 用来实现负载均衡. 例如有两台服务器,nginx 服务器作为代理服务器,执行 .html 文件,apache 服务器上执行 .php ...
- 如果一条SQL语句太长,我们可以通过回车键来创建一个新行来编写SQL语句,SQL语句的命令结束符为分号(;)。
1.如果一条SQL语句太长,我们可以通过回车键来创建一个新行来编写SQL语句,SQL语句的命令结束符为分号(;). 2.select查询的多个字段之间要用逗号“,”分割,如果查询涉及多个表,那多个表之 ...
- html5之canvas初解
<canvas> 元素本身并没有绘制能力(它仅仅是图形的容器) - 必须使用脚本来完成实际的绘图任务. getContext() 方法可返回一个对象,该对象提供了用于在画布上绘图的方法和属 ...
- 蓝牙BLE ATT剖析(一)
一.概述 The attribute protocol allows a device referred to as the server to expose a set of attributes ...
- rpc rmi http
1.RPC与RMI (1)RPC 跨语言,而 RMI只支持Java. (2)RMI 调用远程对象方法,允许方法返回 Java 对象以及基本数据类型,而RPC 不支持对象的概念,传送到 RPC 服务的消 ...
- php---JSON和JSONP
JSON和JSONP (含jQuery实例)(share) 来源:http://www.cnblogs.com/dowinning/archive/2012/04/19/json-jsonp-jque ...
- php--纯静态和伪静态的区别与关系
先前说了什么是纯静态和伪静态,现在介绍一下他们的区别? 首先肯定的是纯静态和伪静态都是SEO的产物,但纯静态和伪静态还是有很大区别的.纯静态是生成真实的HTML页面保存到服务器端,用户访问时直接访问这 ...
- 执行动态sql返回参数
ref: https://support.microsoft.com/en-us/kb/262499 ) ) DECLARE @IntVariable INT ) SET @SQLString = N ...