Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从pypy中的.py文件打开python中的.py文件?_Python_Pypy - Fatal编程技术网

如何从pypy中的.py文件打开python中的.py文件?

如何从pypy中的.py文件打开python中的.py文件?,python,pypy,Python,Pypy,我的程序目前由2.py文件组成 我用pypy运行代码的主要部分(速度快得多),然后用python打开第二个文件,该文件使用matplotlib.pyplot打印数据 我已通过以下方式成功打开了: subprocess.Popen(['C:\\python26\\python.exe ','main_plot.py',]) 打开我的第二个文件 import matplotlib.pyplot as pyplot def plot_function(NUMBER): '''some cod

我的程序目前由2.py文件组成

我用pypy运行代码的主要部分(速度快得多),然后用python打开第二个文件,该文件使用
matplotlib.pyplot
打印数据

我已通过以下方式成功打开了:

subprocess.Popen(['C:\\python26\\python.exe ','main_plot.py',])
打开我的第二个文件

import matplotlib.pyplot as pyplot
def plot_function(NUMBER):
    '''some code that uses the argument NUMBER'''
    pyplot.figure()
    ---plot some data---
    pyplot.show()

但是,我希望能够将参数传递给在python中打开的
plot\u函数
。这可能吗?

最简单的方法是操作系统(“main_plot.py arg”)是的,Popen构造函数获取长度n的列表。因此,只需将main_plot.py的参数添加到列表中:

subprocess.Popen(['C:\\python26\\python.exe ','main_plot.py','-n',1234])
编辑(以响应您的编辑):

您需要修改main_plot.py以接受命令行参数来调用函数。这可以做到:

import matplotlib.pyplot as pyplot
def plot_function(NUMBER):
    '''some code that uses the argument NUMBER'''
    pyplot.figure()
    ---plot some data---
    pyplot.show()

import argparse
if __name__=="__main__":
    argp=argparse.ArgumentParser("plot my function")
    argp.add_argument("-n","--number",type=int,default=0,required=True,help="some argument NUMBER, change type and default accordingly")
    args=argp.parse_args()
    plot_function(args.number)

我真正想做的是将一个数字传递到绘图文件中的函数中。有可能这样做吗?“-f”用于什么?谢谢,这正是我需要的!(我不确定dbo=DB()做了什么。它给了我一个错误,所以我把它删除了,程序似乎运行得很好)附带说明。。。如果我尝试在Mac OS上运行代码,您知道
C:\\python26\\python.exe
行会有什么不同吗?您只需在Mac上编写python,而不使用任何路径,因为它是预安装的,并且位于路径上。但更一般地说,在*NIX系统上,例如/Users/yourloginname/somefile,使用正斜杠而不是反斜杠来引用文件