python调用另外一个python程序的结果
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python调用另外一个python程序的结果相关的知识,希望对你有一定的参考价值。
我有两个python程序,第一个是调用某网站(你懂得,要不然发布不出来)翻译的。还有一个是解析一个xml文件的。
现在我想翻译解析出的文字。
我的翻译程序是这样的
1 # -*- coding: utf-8 -*-
2 import re
3 import os
4 import urllib,urllib2
5 def translate(text):
6 text_1=text
7 values='hl':'zh-CN','ie':'UTF-8','text':text_1,'langpair':"'en'|'zh-CN'"
8 url=某网站地址
9 data = urllib.urlencode(values)
10 req = urllib2.Request(url,data)
11 browser='Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)'
12 req.add_header('User-Agent',browser)
13 response = urllib2.urlopen(req)
14 html=response.read()
15 p=re.compile(r"(?<=TRANSLATED_TEXT=).*?;")
16 m=p.search(html)
17 text_2=m.group(0).strip(';')
18 return text_2
19 if __name__ == "__main__":
20 text_1 = os.system("python b.py")
21 print('The input text: %s' % text_1)
22 text_2=translate(text_1).strip("'")
23 print('The output text: %s' % text_2)
24 filename='/home/yebo/program/Translation.txt'
25 fp=open(filename,'w')
26 fp.write(text_2)
27 fp.close()
28 report='Master, I have done the work and saved the translation at '+filename+'.'
29 print('Report: %s' % report)
我import os然后在第20行text_1= os.system("python b.py")。
结果运行之后,结果是先运行了调用程序。但是text_1的值是256,输出也是256为什么解析的结果没有翻译,只是运行了一遍。我应该怎么改。谢谢帮忙。
用commands
import commands
txt = commands.getoutput('ls -al')追问
getoutput()括号里面的格式是什么样的啊
追答就是你要执行的命令,python b.py
本回答被提问者采纳python中怎么在自定义函数调用另外一个函数中的参数
有几种方法:
在写函数的时候传参进去,然后返回该参数。
在写函数里面将变量命名为global就可以全局调用了。
z=1
print(z)
return z
z = plus()
def plud(z):
print(z)
plud(plus())
以上是关于python调用另外一个python程序的结果的主要内容,如果未能解决你的问题,请参考以下文章