模块基本是一个包含了所有你定义的函数和变量的文件。为了在其他程序中重用模块,模块的文件名必须以.py为扩展名。

#!/usr/bin/python
#Filename:using_sys.py import sys print 'The command line arguments are:'
for i in sys.argv:
print i print '\n\nThePYTHONPATH is',sys.path,'\n'

利用import语句输入sys模块。sys模块包含了与Python解释器和它的环境有关的函数

sys.argv变量是一个字符串的列表。特别sys.argv包含了命令行参数的列表。

记住:脚本的名称总是sys.argv列表的第一个参数。

字节编译的.pyc文件

创建字节编译的文件,这些文件以.pyc作为扩展名。

from...import语句

使用from sys import argv语句,可以避免每次使用sys.  来输入argv变量到你的程序中。

如果你想输入所有sys模块使用的名字,那么你可以使用from sys import*语句。

模块的__name__

每个模块都有一个名称,在模块中可以通过语句来找出模块的名称。

用例:

#!/usr/bin/python
#Filename:using_name.py if __name__=='__main__':
print'This program is being run by itself'
else:
print'I am being imported from another module'

运行结果:

This program is being run by itself

>>> import using_sys
I am being imported from another module

每个python模块都有它的__name__,如果它是‘__main__’,这说明这个模块被用户单独运行,我们可以进行相应的恰当操作。

使用python模块

记住:这个模块应该被放在我们输入它的程序的同一个目录中,或者在sys.path所列目录之一。

例如:

一个模块为:

#!/usr/bin/python
#Filename:mymodule.py

def sayhi():
print 'Hi,this is mymodule speaking.'

version='0.1'

把它和python程序放在同一个目录下

#!/usr/bin/python
#Filename:mymodule_demo.py import mymodule
mymodule.sayhi()
print 'Version',mymodule.version

输出结果为

Hi,this is mymodule speaking.
Version 0.1
>>>

使用from...import

#!/usr/bin/python
#Filename:mymodule_demo2.py from mymodule import sayhi,version
#Alternative:
#from mymodule import *
sayhi()
print 'Version',version

输出结果与上例一样

dir()函数

内建的dir()函数类列出模块定义的标识符。标识符有函数、类和变量

当你为dir()提供一个模块名的时候,它返回模块定义的名称列表。如果不提供参数,它返回当前模块中定义的名称列表。

>>> import sys
>>> dir(sys)
>>> dir()
>>> a =
>>> dir()
>>> del a
>>> dir()

使用del语句删掉当前模块中的变量/属性,这个变化在dir的输出中反应出来

关于del的注释:用来删除一个变量/名称。在这个例子中,del a,你将无法再使用变量啊---它好像从来没有存在过一样。

简明python教程四-----模块的更多相关文章

  1. 《简明python教程》笔记一

    读<简明Python教程>笔记: 本书的官方网站是www.byteofpython.info  安装就不说了,网上很多,这里就记录下我在安装时的问题,首先到python官网下载,选好安装路 ...

  2. (原+转)简明 Python 教程:总结

     简明 Python 教程 说明:本文只是对<简明Python教程>的一个总结.请搜索该书查看真正的教程. 第3章 最初的步骤 1. Python是大小写敏感的. 2. 在#符号右面的内容 ...

  3. 笔记|《简明Python教程》:编程小白的第一本python入门书

    <简明Python教程>这本书是初级的Python入门教材,初级内容基本覆盖,对高级内容没有做深入纠结.适合刚接触Python的新手,行文比较简洁轻松,读起来也比较顺畅. 下面是我根据各个 ...

  4. 【转】简明 Python 教程

    原文网址:http://woodpecker.org.cn/abyteofpython_cn/chinese/ 简明 Python 教程Swaroop, C. H. 著沈洁元  译www.byteof ...

  5. 学习笔记《简明python教程》

    学习笔记<简明python教程> 体会:言简意赅,很适合新手入门 2018年3月14日21:45:59 1.global 语句 在不使用 global 语句的情况下,不可能为一个定义于函数 ...

  6. 《简明Python教程》学习笔记

    <简明Python教程>是网上比较好的一个Python入门级教程,尽管版本比较老旧,但是其中的基本讲解还是很有实力的. Ch2–安装Python:下载安装完成后,在系统的环境变量里,在Pa ...

  7. 简明Python教程自学笔记——命令行通讯录

    [前言]学习Python已经有一段时间了,相关的书籍资料也下载了不少,但是没有一本完整的看完,也没有编出一个完整的程序.今天下午比较清闲就把<简明Python教程>看了一遍,然后根据书里面 ...

  8. python读书笔记-《简明python教程》上

    1月15日 <简明python教程>上 基本结构: 基础概念+控制流+函数+模块+数据结构+面向对象+I/O+异常+标准库+其他   1.概念 1-0    退出python linux: ...

  9. 简明Python教程 ~ 随书笔记

    本文是阅读<简明Python教程>所做的随书笔记,主要是记录一些自己不熟悉的用法,或者所看到的比较有意思的内容,本书英文版A Byte of Python, 中文译版 简明Python教程 ...

随机推荐

  1. ant.xml

    <?xml version="1.0"?> <project name="dxcc" default="buildplugins&q ...

  2. JVM Specification 9th Edition (1) Cover

    这个就是Java虚拟机规范第9版的网页版封面了,上面是4个大牛的名字,先来了解以下吧,万一那天有幸遇见呢. Tim Lindholm Frank Yellin Gilad Bracha Alex Bu ...

  3. STM32F10x_RTC秒中断

    Ⅰ.概述 RTC(Real Time Clock)是实时时钟的意思,它其实和TIM有点类似,也是利用计数的原理,选择RTC时钟源,再进行分频,到达计数的目的. 该文主要讲述关于RTC的秒中断功能,这个 ...

  4. fiddler获取手机请求

    最近由于项目的关系,一直在测试APP,但是比较令人头痛的问题就是,APP的测试没有办法像web的测试那样,可以直接的通过开发工具看到请求和响应,对于一些东西只能去看日志(比较麻烦),偶然间发现了fid ...

  5. 【转】防止CListCtrl闪烁的几种方法

    转载出处:http://blog.sina.com.cn/s/blog_5ee42ba30100g50j.html 1.使用SetRedraw禁止窗口重绘,操作完成后,再恢复窗口重绘 m_ctlLis ...

  6. 用原生JS模仿jquery,需要HTML5的支持

    jQuery是现在最流行的JavaScript工具库. 据统计,目前全世界57.3%的网站使用它.也就是说,10个网站里面,有6个使用jQuery.如果只考察使用工具库的网站,这个比例就会上升到惊人的 ...

  7. 一入python深似海--变量和对象

    一.基本原理 Python中一切都是对象,变量是对象的引用. 这是一个普遍的法则.我们举个样例来说.Python是怎样来处理的. x = 'blue' y = 'green' z = x 当pytho ...

  8. RocketMQ性能压测分析(转载)

    一   机器部署 1.1  机器组成 1台nameserver 1台broker  异步刷盘 2台producer 2台consumer   1.2  硬件配置 CPU  两颗x86_64cpu,每颗 ...

  9. Spring框架中的AOP技术----配置文件方式

    1.AOP概述 AOP技术即Aspect Oriented Programming的缩写,译为面向切面编程.AOP是OOP的一种延续,利用AOP技术可以对业务逻辑的各个部分进行隔离,从使得业务逻辑各部 ...

  10. JS语法快速查询

    本文转载至 http://wenku.baidu.com/link?url=z4gND-0w-Cq7hkn2Vnnz0CAJJPwJ8jJrFY0jtnnACiaz4yMK49VAvfJ3BlTVcm ...