最常用的两个模块:

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. Spring 对数据库的支持

    DAO DAO是用于访问数据的对象,大多数时候,我们将数据保存在数据库中,但这不是唯一选择. 用户也可以将数据保存在数据文件或者LDAP中 DAO屏蔽了数据操作的具体细节 Spring本质上希望能够以 ...

  2. [UOJ#348][WC2018]州区划分

    [UOJ#348][WC2018]州区划分 试题描述 小 \(S\) 现在拥有 \(n\) 座城市,第ii座城市的人口为 \(w_i\),城市与城市之间可能有双向道路相连. 现在小 \(S\) 要将这 ...

  3. webpack watch模式产生*.hot-update.json文件

    webpack --watch会产生*.hot-update.json文件,解决方法如下: output: { path: path.join(root, "dist"), fil ...

  4. Codeforces Round #357 (Div. 2) A

    A. A Good Contest time limit per test 1 second memory limit per test 256 megabytes input standard in ...

  5. python使用openpyxl操作excel

    def initExcel(): file_path = "test.xlsx" file = load_workbook(file_path) table = file[&quo ...

  6. hdu 4089 概率dp

    /* 题目大意:注册一款游戏需要排队,一共有四种事件: 1.注册失败,队列不变,概率为p1 2.注册过程中断开连接,正在注册的人排到队列的末尾,概率为p2 3.注册成功,移出队列,概率为p3 4.服务 ...

  7. HDU 1171Big Event in HDU(转01背包)

    题意: 给你一组数,分成差距最小的两份A,B(A>=B) 分析: 转01背包 注意: 01背包用一维数组 不要用二维 二维数组若是开太大,内存超限,开太小,RE #include "c ...

  8. win8.1 安装sql2008 启动报错.net framework 应用程序的组件中发生了异常unable to read the previous list

    解决方案:删除 RegSrvr.xml C:\Documents and Settings\Administrator\Application Data\Microsoft\Microsoft SQL ...

  9. 我的代码,写的pagebase。还是留着吧。语义化,与我的云平台一样,只不过云平台是用js写的。这个是webform.下回写mvc吧。核心很简单。

    Ps:记一下用的时候,一不小心我手贱碰到的问题吧:我在页面里面加上了form runat=server,然后所有的html控件就再也找不着了.就是下面的control collection这里,如果加 ...

  10. QT5.3 杂记(转)

    原文转自 https://www.cnblogs.com/aoldman/p/3968280.html Qt5下,QWidget系列从QtGui中被剥离出去,成为单独的QtWidget模块.随着Qt ...