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_模块的更多相关文章

  1. Python_模块介绍

    模块:一组或者一个.py文件实现了某个功能的代码集合 模块分为三种: 自定义模块 内置标准模块(又称标准库):Python自带的模块 开源模块:自己写的模块,有可以供人使用的功能 开源模块的集散地:P ...

  2. 零基础学习python_模块(50-52课)

    今天学了下模块,那什么是模块呢?其实我们写的以py结尾的一个文件就是一个模块,模块也就是程序 还记得我们之前学过容器.函数.类吧 容器    ->    数据的封装 函数    ->   ...

  3. python_模块学习

    '''import sysprint(sys.path) #打印环境变量 #运行结果为:['D:\\PyCharm Community Edition 2018.2.2\\NewYear\\untit ...

  4. Python_模块的定义与使用

    1.模块的定义: 1.1 标准格式: import 模块名 模块名.函数名(实参列表) 1.2 特殊格式: from 模块名 import 函数名1,函数名2... 函数名(实参列表) 2.模块的使用 ...

  5. python_模块2

    1.sys模块 import sys # 获取一个值的应用计数 a = [11,22,33] b = a print(sys.getrefcount(a)) # python默认支持的递归数量 v1 ...

  6. python_模块1

    1.将指定的字符串进行加密 # 导入模块 import hashlib def get_md5(data): # 获取hashlib模块中的md5加密算法 obj = hashlib.md5() # ...

  7. python_模块 collections,random

    collections模块 在内置数据类型(dict.list.set.tuple)的基础上,collections模块还提供了几个额外的数据类型:Counter.deque.defaultdict. ...

  8. python_模块 hashlib ,configparser, logging

    hashlib模块 算法介绍 Python的hashlib提供了常见的摘要算法,如MD5,SHA1等等. 什么是摘要算法呢?摘要算法又称哈希算法.散列算法.它通过一个函数,把任意长度的数据转换为一个长 ...

  9. python_ 模块 json pickle shelve

    一,什么是模块? 常见的场景:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. 但其实import加载的模块分为四个通用类别: 1 使用python编写的代码( ...

随机推荐

  1. 使用安捷伦波形编辑软件产生GK101 任意波数据文件的方法(支持手绘)

    软件安装包下载地址: 链接: http://pan.baidu.com/s/1bn8Lmhx 密码: v5xz 一.安捷伦IO套件安装 1.将压缩包解压,首先双击IOLibSuite_16_3_179 ...

  2. windows7下使用telnet

    需要打开windows功能,telnet客户端. 在命令行里输入Telnet open www.qq.com 80 连接成功后会进入一个空界面,之前命令行窗口里的字符还在,光标却移动到最起始. 这是很 ...

  3. mongodb 手动分片的命令汇总

    手动分片的操作 自动分片会带来性能的下降. 所以要合理使用手动分片. 并且配合Tag一起使用. # 对于4个shard的程序, 预先处理的指令1. 加入分片服务器sh.addShard( " ...

  4. PHP 文件系统管理函数与 preg_replace() 函数过滤代码

    案例:在带行号的代码至文件 crop.js 中.用两种方法去掉代码前面的行号,带行号的代码片段: 1.$(function(){ 2. //初始化图片区域 3. var myimg = new Ima ...

  5. 关于Shader的跨平台方案的考虑

      Apple 推出 metal后,除了新的metal framewrok外,也多了一种新的shader语言,最近工作也做了一些metal移植的测试,主要还是现有引擎如何可以快速支持metal的解决方 ...

  6. PHP面向对象程序设计的61条黄金法则

    PHP面向对象程序设计的61条黄金法则   你不必严格遵守这些原则,违背它们也不会被处以宗教刑罚.但你应当把这些原则看成警铃,若违背了其中的一条,那么警铃就会响起 . ----- Arthur J.R ...

  7. 【IOS笔记】Using View Controllers in Your App

    参考:http://www.cnblogs.com/patientAndPersist/p/3279645.html Using View Controllers in Your App Whethe ...

  8. window.open()弹出窗口防止被禁

    window.open(),顾名思义,是指在当前浏览器窗口弹出另一个浏览器窗口. 因为多种原因,浏览对window.open弹出的窗口做了多方限制.限制不同,肯定会造成各浏览器弹出窗口的差异. 大部分 ...

  9. PHP文件操作 之往一个文件写入数据

    //打开一个文件 $f = fopen($filename,'wb'); $filename:打开一个文件,不存在则自动创建,如果不能创建,说明指定的文件目录有错误 wb:写入的方式 ---- 覆盖原 ...

  10. MVC两个必懂核心

    ASP.NET MVC由以下两个核心组成部分构成: 一个名为UrlRoutingModule的自定义HttpModule,用来解析Controller与Action名称: 一个名为MvcHandler ...