python专栏-1-与用户交互
python专栏-1-与用户信息交互
一: optparse
1> optparse demo
OptionParser
from optparse import OptionParser
import sys
def parse_options():
introduce = 'arse_options text demo ..'
usage = introduce
parser = OptionParser(usage)
parser.add_option('-a','--age',help="old,age..",default='0',metavar=int)
parser.add_option('-n', '--name', help="names", default='**', metavar=str)
options, categories = parser.parse_args(sys.argv)
return (options, categories)
def main():
options, categories = parse_options()
print(options, categories)
print('{} print :My name is {}, {} years old'.format(categories[0], options.age, options.name))
if __name__ == '__main__':
main()
cmd 命令
python test.py -h
===================
Usage: arse_options text demo ..
Options:
-h, --help show this help message and exit
-a <class 'int'>, --age=<class 'int'>
old,age..
-n <class 'str'>, --name=<class 'str'>
names
python test.py -a 8 -n Tom
===========================
{'age': '8', 'name': 'Tom'} ['test.py']
test.py print :My name is 8, Tom years old
2> optparse 解析
optionparser的执行过程:
导入optionparser : from optparse import OptionParser
构造optionparser的对象:parser = OptionParser()
往optionparser对象中增加option :parser.add_option()
调用optionparser的解析函数:(options, args) = parser.parse_args()
在options中使用解析到的options,在args中使用其他的args。
usage : 注释
parser.add_option : 添加新的传参选项
parser.add_option('-n', '--name', help="names", default='**', metavar=str)
-n :短参数名 '--name' 长参数名
help: -h 与--help 信息
options.name: 获取返回值
default : 无传参默认
metavar: 字符串类型
action - 命令行遇到参数时的动作,默认值是 store
二:argparse
1-1> argparse demo
argparse.ArgumentParser
from optparse import OptionParser
import argparse
import os
import sys
def parse_options():
introduce = 'arse_options text demo ..'
usage = introduce
OptionParser(usage)
parser = argparse.ArgumentParser(prog=os.path.basename(sys.argv[0]))
parser.add_argument('-a','--age',help="old,age..",default='0',metavar=int)
parser.add_argument('-n', '--name',action='store_true', help="names", default='**', metavar=str)
return parser
def main():
args = parse_options().parse_args()
print('My name is {}, {} years old'.format(args.age, args.name))
if __name__ == '__main__':
main()
三个步骤:
1、创建一个解析器——创建 ArgumentParser() 对象
parser = argparse.ArgumentParser(prog=os.path.basename(sys.argv[0]))
2、添加参数——调用 add_argument() 方法添加参数
parser.add_argument('-a','--age',help="old,age..",default='0',metavar=int)
3、解析参数——使用 parse_args() 解析添加的参数
args = parse_options().parse_args()
print('My name is {}, {} years old'.format(args.age, args.name))
输出:
cmd 界面输出
I:\Work_referrd_info>python test.py -a 8 -n Tom
=====================================
My name is 8, Tom years old
解析:
action - 命令行遇到参数时的动作,默认值是 store
三:input
1, input demo
Python3.x 中 input() 函数接受一个标准输入数据,返回为 string 类型。
def main():
info = input().split()
print(info)
if __name__ == '__main__':
main()
==============
My name is 8, Tom years old
=======================
['My', 'name', 'is', '8,', 'Tom', 'years', 'old']
解析:
界面输如传参内容
四:键盘回车
1> pause demo
print('test demo')
os.system('pause')
print('1')
===============
test demo
�밴���������. . .
回车后 输出
1