最常用的两个模块:

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. C#如何在keydown事件里判断按下的是左shift还是右shift

    public partial class Form1 : Form { [System.Runtime.InteropServices.DllImport("user32.dll" ...

  2. 【bzoj2038】[2009国家集训队]小Z的袜子(hose) 莫队算法

    原文地址:http://www.cnblogs.com/GXZlegend/p/6803860.html 题目描述 作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿.终 ...

  3. vi - vim的一些遗忘点

    1. vi 供分为三种模式:一般模式.编辑模式和命令行模式.i / Esc + :wq :q :q! 使vi在一般模式与编辑模式中来回转换. /word 向下寻找一个名称为word的字符串: ?wor ...

  4. [洛谷P4889]kls与flag

    题目大意:有$n$根竹竿,第$i$根竹竿在$i$位置,第​$i$根竹竿高度为​$h_i$,每根竹竿可以向左倒或向右倒,问有几对竹竿倒下后顶端重合. 题解:求出每根竹竿倒下后的位置,离散化,记录一下每个 ...

  5. thr [树链剖分+dp]

    题面 思路 首先,可以有一个$dp$的思路 不难发现本题中,三个点如果互相距离相同,那么一定有一个"中心点"到三个点的距离都相同 那么我们可以把本题转化计算以每个点为根的情况下,从 ...

  6. The Cave

    The Cave 题目描述 给定一棵有n个节点的树,相邻两点之间的距离为1. 请找到一个点x,使其满足所有m条限制,其中第i条限制为dist(x,a[i])+dist(x,b[i])<=d[i] ...

  7. C#实战Microsoft Messaging Queue(MSMQ)消息队列

    前言 在使用MSMQ之前,我们需要自行安装消息队列组件!(具体安装方法大家自己搜一下吧) 采用MSMQ带来的好处是:由于是异步通信,无论是发送方还是接收方都不用等待对方返回成功消息,就可以执行余下的代 ...

  8. 2016华中农业大学预赛 B 数学

    Problem B: Handing Out Candies Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 272  Solved: 20[Submit ...

  9. Python学习笔记(Django篇)——2、创建第一个django应用

    在helloworld工程的基础上,我们准备创建第一个基于web的django应用,把这个应用名字命名为demo   首先,是如何创建这个应用包,当然第一选择我们可以进入到cmd中,执行如下命令 py ...

  10. A simple greedy problem(hdu 4976)

    题意:有n个小兵,每个小兵有a[i]血量,第一个人每次只能对一个小兵砍一滴血,第二个人每次对所有生存的小兵砍一滴血. 最后看第一个人最多可以砍杀几个小兵. /* 首先,如果所有小兵的血量都不同的话,我 ...