使用 sys.argv
获取命令行参数
import sys
print(sys.argv)
使用 sys.stdin
和 fileinput
读取标准输入
import sys
for line in sys.stdin:
print(line, end="")
使用 getpass
库读取密码
import getpass
user = getpass.getuser()
passwd = getpass.getpass('your password :')
print(user, passwd)
要解析一个配置文件,首先需要创建一个 ConfigParser
对象。allow no value
默认取值为 False
, 表示在 配置文件中是否允许选项没有值的情况。 默认情况下,所有的选项都应该有一个值。 但是, 在一些特殊的应用中,选项存在就表示取值为真,选项不存在就表示取值为假。
import ConfigParser
cf = ConfigParser.ConfigParser(allow_no_value=True)
有了 ConfigParser
对象以后,可以使用 read
方法从配置文件中读取配置内容,也可以 使用 readfp
方法从一个已经打开的文件中读取配置内容
cf.read( 'my.cnf')
[’my.cnf ’]
ConfigParser
中有很多的方法,其中与读取配置文件,判断配置项相关的方法有 :
ConfigParser
也提供了许多方法便于我们修改配置文件:
在最简单的使用中,我们直接导人 logging
模块, 然后调用它的 debug、 info、 warn、 error 和 critical 等 函数记录日志
对于复杂的项目, 一般将日志配置保存到配置文件中:
[loggers]
keys = root
[handlers]
keys = logfile
[formatters]
keys = generic
[ logger_root]
handlers = logfile
[handler_logfile]
class = handlers.TimedRotatingFileHandler
args = ('app . log','midnight', 1 , 10)
level = DEBUG
formatter = generic
[formatter_generic]
format = %(asctime)s %(levelname)-5.5s [%(name)s:%( lineno)s]%(message)s
Click 是 Flask 的作者( Armin Ronacher)开发的一个第三方模块,用于快速创建命令 行
我们以 Click 官方文档中的例子来演示 click
的使用。 如下所示:
import click
@click.command ()
@click.option (' --count ', default=1, help = 'Number of greetings.')
@click.option(' --name ', prompt = ' Your name ', help= 'The person to greet.')
def hello(count, name) :
'''Simple program that greets NAME for a total of COUNT times .'''
for x in range(count):
click.echo(' Hello %s !' %name)
if name == 'main':
hello ()
我们没有直接指定 name 这个参数时, Click 会提示我们在交互模式下输入。 如下所示 :
$ python hello.py --count=3
Your name : John
Hello John!
Hello John !
Hello John !