本文整理汇总了Python中System.command方法的典型用法代码示例。如果您正苦于以下问题:Python System.command方法的具体用法?Python System.command怎么用?Python System.command使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System
的用法示例。
在下文中一共展示了System.command方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: analyse
# 需要导入模块: import System [as 别名]
# 或者: from System import command [as 别名]
def analyse(phrase,username):
global action
global code
global infos
global reponse
type=""
resIn,resOut="",""
act,typeAct,rep="","",""
if re.search("[A-Z].*",phrase):
m=re.search("[A-Z].*",phrase)
resIn=m.group(0)
if action=="":#gestion passage initial
if re.search("(calcul|combien|pythagore|thales|perimetre|surface|volume|triangle)?[-+]?\d+",phrase,re.IGNORECASE) or re.search("([-+]?\d+)+",phrase):
#if re.search("toto",phrase):
if re.search("[triangle,rectangle]",phrase,re.IGNORECASE):
phrase+=" pythagore"
type="T"
rep=Math.run(phrase)
else:
possible=0
for file in listeFichiers:
fichier=open("database/"+file,"r")
for ligne in fichier:
temp=ligne.split(";")
mots=temp[0]
i=0
while i < len(mots):
if re.search(mots,phrase,re.IGNORECASE):
t=mots.split(".*")
if len(t)>possible:
possible=len(t)
typeAct=temp[1]
act=temp[2]
reponse=temp[3]
i+=2
type="T"
listRep=reponse.split("/")
rep=choice(listRep)
#remplacement du %IN% dans l'action
listeAct=act.split(" ")
for i in range(len(listeAct)):
if listeAct[i].strip()=="%IN%":
#listeAct[i]="'"+resIn.strip()+"'"
listeAct[i]="'"+phrase.strip()+"'"
act=" ".join(listeAct)
if typeAct=="bash":#récupération des infos en plus
if re.search("%OUT%",reponse):
resOut=subprocess.check_output(act,shell=True)
else:
resOut=System.command(act)
elif typeAct=="python":
resOut,infos=eval(act)
action=infos[0]
code=infos[1]
listeMot=rep.split(" ")
#remplacement des %IN% et %OUT% dans la réponse
if typeAct!="python" or (typeAct=="python" and code==0):#si reponse directe
for i in range(len(listeMot)):
if listeMot[i].strip()=="%OUT%":
try:
resOut=resOut.decode()
except:
resOut=resOut
listeMot[i]=resOut.strip()
for i in range(len(listeMot)):
if listeMot[i].strip()=="%IN%":
listeMot[i]=resIn.strip()
rep=" ".join(listeMot)
else:# si besoin de precision, on affiche le resultat de la fonction
try:
rep=resOut.decode()
except:
rep=resOut
if action=="fichier" and code==0:
type="F"
else:
type="T"
if code==0:
action,infos="",""
elif action!="":
type="T"
if re.search("annule",phrase,re.IGNORECASE):
infos=[]
code=0
action=""
else:
fct=infos[len(infos)-1]
resOut,infos=eval(fct+"("+str(code)+",'"+str(phrase)+"',"+str(infos)+")")
code=infos[1]
if code==0:
action=""
infos=[]
listRep=reponse.split("/")
rep=choice(listRep)
listeMot=rep.split(" ")
for i in range(len(listeMot)):
if listeMot[i].strip()=="%OUT%":
try:
#.........这里部分代码省略.........