创建一些词汇列表,比如,冠词(“the”,“a”)、主题(“cat”,“dog”,“man”,“woman”)、动词(“sang”,“run”,“jumped”)、状语(“loudly”,“quietly”,“well”,“badly”)。之后循环5次,每次迭代中,使用random.choice()函数选择冠词主题动词状语,使用random.randint()选择结构:冠词+主题+动词+状语;冠词+主题+动词。 用户可在命令行上加上参数数字(1-10之间时),程序输出相应的行数,若没有加命令行参数,默认输出5行。
运行实例:
the man ran
a man jumped
a cat jumped badly
a man sang
the woman sang
---------------------------------------------
D:\python_work\test.py 8
the woman sang loudly
a woman jumped quietly
a woman sang
a cat sang
a man jumped
a woman sang
the man jumped
a man sang quietly
import random
import sys
time=5
if len(sys.argv)>1:
try:
if 1<=int(sys.argv[1])<=10:
time=int(sys.argv[1])
except ValueError as err:
print(err)
time=5
guanci=["the","a"]
zhuti=["cat","dog","man","woman"]
dongci=["sang","ran","jumped"]
zhuangyu=["loudly","quietly","well","badly"]
line=""
for i in range(time):
gc=random.choice(guanci)
zt=random.choice(zhuti)
dc=random.choice(dongci)
zy=random.choice(zhuangyu)
if random.randint(0,1):
line=gc+" "+zt+" "+dc+" "+zy
else:
line=gc+" "+zt+" "+dc
print(line)