常用python库

urllib.urlencode: 把字典组合成url

import urllib

>>> params = urllib.urlencode({'spam': 1, 'eggs': 2, 'bacon': 0})
>>> print params
eggs=2&bacon=0&spam=1

subprocess

subprocess模块是python从2.4版本开始引入的模块。主要用来取代 一些旧的模块方法,如os.system、os.spawn*、os.popen*、commands.*等。subprocess通过子进程来执行外部指令,并通过input/output/error管道,获取子进程的执行的返回信息。

常用方法:

subprocess.call():执行命令,并返回执行状态,其中shell参数为False时,命令需要通过列表的方式传入,当shell为True时,可直接传入命令

>>> subprocess.call('du -sh ~/tmp/*', shell=True)
4.0K /home/eliaten/tmp/1.py
4.0K /home/eliaten/tmp/2.py

subprocess.check_call():用法与subprocess.call()类似,区别是,当返回值不为0时,直接抛出异常

版本号比较:from distutils.version import LooseVersion

if LooseVersion(sdk_version) < '16.5'

argparse介绍
是python的一个命令行解析包,非常编写可读性非常好的程序

import argparse
parser = argparse.ArgumentParser()
parser.parse_args()
parser.add_argument(
'-r', '--release', required=False,
help='the Git release branch used for the build, e.g. "master" or "15b"' +
' Overrides entry in config.')
通过定义参数时指定action="store_true"即可像-h一样只指定参数,不指定值。
互斥参数,以下-v与-q不能同时出现
group = parser.add_mutually_exclusive_group()
group.add_argument("-v", "--verbose", action="store_true")
group.add_argument("-q", "--quiet", action="store_true")

可选值与默认值:
choices=[0, 1, 2], default=1

原文地址:https://www.cnblogs.com/tlmn2008/p/8422143.html