码迷,mamicode.com
首页 > 编程语言 > 详细

Python-模块的使用

时间:2016-11-24 07:40:15      阅读:176      评论:0      收藏:0      [点我收藏+]

标签:sys   分隔符   原因   安装   exp   2.x   open   相同   __init__   

基础概念

  - 模块是Python组织代码的基本方式
  - 一个Python脚本可以单独运行,也可以导入到另一个脚本中运行,当脚本被导入运行时,我们将其称为模块(module)
  - 所有的.py文件都可以作为一个模块导入
 
 

特点

  - 模块名与脚本的文件名相同
    例如写一个hello.py的脚本,则可以在另一个脚本中用import hello语句来导入它
  - Python的模块可以按目录组织为包
    创建1个包的步骤:
      - 创建一个名字为包名的目录
      - 在该目录下创建一个__init__.py文件
      - 根据需要,在该目录下存放脚本文件或已编译的扩展及子包
      - import pack.m1,pack.m2,pack.m3
 

扩展

  - Python内置模块的位置存放在(sys.path环境变量中,类似shell中的PATH)
    主要的模块安装在/usr/lib64/python 2.x/下(python-libs包安装的)
  - 自定义Python的模块path
    1、导入sys包,利用append把路径加入path中
      sys.path.append(‘/tmp‘)
    2、修改系统变量
      vim ~/.bashrc
      export PYTHONPATH=/tmp
 

例子

    写一个类似wc命令的脚本
#!/usr/bin/env python
 
def PrintInfo(content):
  chars = len(content)
  words = len(content.split())
  lines = len(content.split(\n))
  print chars,words,lines
 
string = open(/etc/passwd).read()
PrintInfo(string)
与wc命令对比后发现多了一行,原因是,我们统计行的时候用\n作为分隔符,虽然是三行,三个\n,那么用\n分割后,就为4行了。
改进版:
#!/usr/bin/env python
 
def PrintInfo(content):
  chars = len(content)
  words = len(content.split())
  lines = content.count(\n)
  print chars,words,lines
 
string = open(/etc/passwd).read()
PrintInfo(string)

这里只需要对\n出现的次数做统计即可。

 

脚本调用

cat 2.py
#!/usr/bin/env python

import wc
    那么执行2.py就可以去调用wc.py(当前目录下,没有的话才会去PYTHONPATH中查找),调用完毕后会生成wc.pyc文件,方便下次调用,注意模块名和变量名定义规则相同,不能以数字开头
 
 
 
 

Python-模块的使用

标签:sys   分隔符   原因   安装   exp   2.x   open   相同   __init__   

原文地址:http://www.cnblogs.com/dachenzi/p/6095731.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!