最常用的两个模块:

os    #可以允许python调用执行系统命令,如shell
sys    #处理与python程序本身的事情
 
Python自带200多个常用模块
Python官网收集了2000多个模块,基本可以找到想要的任何功能,包括图形和界面
 
SYS模块
>>> import sys        导入模块
>>> sys.path        列出搜索模块的目录
 
sys.argv:输出调用脚本时的参数
  1. [root@likun python_scripts]# cat 10sys.py
    #!/usr/bin/python
    import sys
    print sys.argv
    print sys.argv[1]
    print sys.argv[1:3]
  2. [root@likun python_scripts]# python 10sys.py aaa bbb ccc ddd
    ['10sys.py','aaa','bbb','ccc','ddd']
    aaa
    ['aaa','bbb']
>>> sys.exit()                    退出当前python程序
 
OS模块
>>> import os
>>> os.system('hostname') 执行系统命令
likun.com
0 执行成功则返回0
>>> os.system('mkdir books')
0
>>> os.system('mkdir %s' % col) 也可以带入变量
0
>>> os.system('pwd && hostname') 执行多条系统命令
/root/python_scripts
likun.com
0
>>> os.system('pwd ; hostname')
/root/python_scripts
likun.com
0
>>> os.chdir('/tmp') 改变目录。(用os.system(cd /tmp)下一条命令会失效)
>>> os.listdir('/home') 将目录中内容存入列表中
['oracle', 'nagios']
>>> os.listdir('/home')[0]
'oracle'
 
TIME模块
time.sleep(2)
 
制作模块
 
1、在当前目录创建一个mod.py文件
  1. #!/usr/bin/python
    name ='My mod'
    version ='2.1'
    askname=raw_input('Please input your name:')
  1. >>>import mod                            --导入模块即执行模块
  2. Please input your name:lk
  3. >>> mod.askname
  4. 'l k'
  5. >>> mod.version
  6. '2.1'
  7. >>> print mod.version
  8. 2.1
  9. >>> mod.name
  10. 'My mod'
 
如果自定义模块不在当前目录,需要将模块所在目录添加到sys.path环境变量中:
程序退出则会失效
>>> import sys
>>> sys.path.append('/root/python_scripts/')
>>> import mod
 
 
2、导入模块时不启用,需将模块内容放入函数中
  1. #!/usr/bin/python
    name ='My mod'
    version ='2.1'
    def askname():
    askname=raw_input('Please input your name:')
    return askname

    >>>import mod

  1. >>> mod.askname()
  2. Please input your name:good
  3. 'good'
 
小练习:制作一个类似service xxx start 的程序
vi service.py
[root@likun support-files]#  python service.py httpd status
 
小练习:制作一个不规范的service启动脚本:
  1. [root@likun python_scripts]# cat service.py 
  2. #!/usr/bin/python
    
    import sys
    import os if len(sys.argv)<3:
    print 'usage: mysql {status|start|stop|restart}'
    sys.exit()
    if sys.argv[1]=='mysql':
    action=sys.argv[2]
    os.system('/mysql/support-files/mysql.server %s'%action)
[root@likun python_scripts]# python service.py mysql restart
Shutting down MySQL.                                       [  OK  ]
Starting MySQL..                                           [  OK  ]
 

6、Python模块的更多相关文章

  1. 使用C/C++写Python模块

    最近看开源项目时学习了一下用C/C++写python模块,顺便把学习进行一下总结,废话少说直接开始: 环境:windows.python2.78.VS2010或MingW 1 创建VC工程 (1) 打 ...

  2. Python模块之configpraser

    Python模块之configpraser   一. configpraser简介 用于处理特定格式的文件,其本质还是利用open来操作文件. 配置文件的格式: 使用"[]"内包含 ...

  3. Python模块之"prettytable"

    Python模块之"prettytable" 摘要: Python通过prettytable模块可以将输出内容如表格方式整齐的输出.(对于用Python操作数据库会经常用到) 1. ...

  4. python 学习第五天,python模块

    一,Python的模块导入 1,在写python的模块导入之前,先来讲一些Python中的概念性的问题 (1)模块:用来从逻辑上组织Python代码(变量,函数,类,逻辑:实现一个功能),本质是.py ...

  5. windows下安装python模块

    如何在windows下安装python模块 1. 官网下载安装包,比如(pip : https://pypi.python.org/pypi/pip#downloads) pip-9.0.1.tar. ...

  6. 安装第三方Python模块,增加InfoPi的健壮性

    这3个第三方Python模块是可选的,不安装的话InfoPi也可以运行. 但是如果安装了,会增加InfoPi的健壮性. 目录 1.cchardet    自动检测文本编码 2.lxml    用于解析 ...

  7. Python基础篇【第5篇】: Python模块基础(一)

    模块 简介 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就 ...

  8. python 模块加载

    python 模块加载 本文主要介绍python模块加载的过程. module的组成 所有的module都是由对象和对象之间的关系组成. type和object python中所有的东西都是对象,分为 ...

  9. pycharm安装python模块

    这个工具真的好好,真的很喜欢,它很方便,很漂亮,各种好 pycharm安装python模块:file-setting-搜索project inte OK

  10. Python模块常用的几种安装方式

    Python模块安装方法 一.方法1: 单文件模块直接把文件拷贝到 $python_dir/Lib 二.方法2: 多文件模块,带setup.py 下载模块包,进行解压,进入模块文件夹,执行:pytho ...

随机推荐

  1. mssql 格式化字符串 /时间 年月日时分秒

    比如:1 想格式化 000001,100 格式化为000100: 思路是这样的 1000000 +格式化的数字 取后6位: select   right(cast(power(10,6) as var ...

  2. vue嵌套路由与404重定向实现方法分析

    第一部分: vue嵌套路由 嵌套路由是什么? 嵌套路由就是在一个被路由过来的页面下可以继续使用路由,嵌套也就是路由中的路由的意思. 比如在vue中,我们如果不使用嵌套路由,那么只有一个<rout ...

  3. 堆栈(Stacks)

    堆栈(Stacks) 准备工作 安装Docker 1.13及以上版本 安装Docker Compose正如第三部分的准备工作. 安装Docker Machine正如第四部分的准备工作. 阅读第一部分的 ...

  4. Oracle SQL 疑难解析读书笔记(一 基础)

    1.在语句中找到和消除空值 select first_name,last_name from hr.employees where commission_pct is null is null 和 i ...

  5. 飞思卡尔 HCS12(x) memory map解说

    对于用MCU的人来说,不一定要明白HCS12(x) memory map的机制和联系.因为如果没有系统地学习操作系统和编译原理之类的课程,确实有些难度.并且,对于DG128 XS128这样的MCU,默 ...

  6. JS 自定义时间格式化

    // 对Date的扩展,将 Date 转化为指定格式的String// 月(M).日(d).小时(h).分(m).秒(s).季度(q) 可以用 1-2 个占位符, // 年(y)可以用 1-4 个占位 ...

  7. mysql索引记

    如果字段是数值型,where 是字符串型,走索引但是,如果字段是字符串型,但是where 是数值型,不走索引

  8. Struts2的类型转换机制

    Struts2的类型转换机制 在基于HITP 协胆的Web 应用中,客户端〈浏览器〉和服务器之间传输的都是字符串形式的数据,换句话说,服务器接收到的用户数据只能是字符串或字符数组, 但在服务器端的Ja ...

  9. 写一个system.data.entity的simpledatarepo,实现crudq这些功能,不需要引入entityframework,直接可以使用,用到objectset

    note:you can delete reference of entityframework when using this classes.it`s just a simple repohelp ...

  10. 开车旅行(NOIP2012)

    原题传送门 这道坑爹题调了我2小时233~ 首先这道题可以用set,平衡树,双向链表等一堆非(sang)常(xin)简(bing)单(kuang)的算法搞出对于任何一个高度h[i]的前2名和后2名 然 ...