使用subprocess和rpyc在Python中将连接从方法传递到其他方法

使用subprocess和rpyc在Python中将连接从方法传递到其他方法,python,oop,Python,Oop,尝试创建一个库,该库连接到Unix框,将此连接传递到下一个方法并运行shell脚本。我还在其他文件中调用这个方法。 python新手,请帮助 文件1: from file2 import * def start(): one=libs() one.connect() one.run() import rpyc class libs(): def connect(self): self.conn=rpyc.classic.

尝试创建一个库,该库连接到Unix框,将此连接传递到下一个方法并运行shell脚本。我还在其他文件中调用这个方法。 python新手,请帮助

文件1:

from file2 import *
def start():
        one=libs()
        one.connect()
        one.run()
import rpyc

class libs():
    def connect(self):
        self.conn=rpyc.classic.connect("hostname")
        self.remote=self.conn.modules.subprocess
        return
    def run(self):

        p1="sh -vx /tmp/test.sh"
        self.result=self.remote.Popen(p1,shell=True,stdout=remote.PIPE,stderr=remote.PIPE)
        out,err=self.result.communicate()
        print out,err
        return out,err
文件2:

from file2 import *
def start():
        one=libs()
        one.connect()
        one.run()
import rpyc

class libs():
    def connect(self):
        self.conn=rpyc.classic.connect("hostname")
        self.remote=self.conn.modules.subprocess
        return
    def run(self):

        p1="sh -vx /tmp/test.sh"
        self.result=self.remote.Popen(p1,shell=True,stdout=remote.PIPE,stderr=remote.PIPE)
        out,err=self.result.communicate()
        print out,err
        return out,err
我做错了什么,我正在尝试在这里实现OOPS。没有错误或输出,只是代码以0退出 我也尝试过将file2中的两个方法合并为一个,然后只在file1中调用一个方法

import rpyc

class libs():
p1="sh -vx /tmp/test.sh"
    def connect(self,p1):
        self.conn=rpyc.classic.connect("hostname")
        self.remote=self.conn.modules.subprocess


self.result=self.remote.Popen(p1,shell=True,stdout=remote.PIPE,stderr=remote.PIPE)
        out,err=self.result.communicate()
        print out,err
        return out,err

你试过先开始学习python吗

当你调用一个函数或方法或任何可调用的东西时,你需要括号

def start():
        one=libs()
        one.connect()
        one.run()

你试过先开始学习python吗

当你调用一个函数或方法或任何可调用的东西时,你需要括号

def start():
        one=libs()
        one.connect()
        one.run()

感谢您在提问时指出这是一个拼写错误,请更正。感谢您在提问时指出这是一个拼写错误,请更正。您是否直接从单个功能中尝试过?它有没有在那里的字,它是什么,目前的错误或问题?目前,这个问题相当广泛…没有错误,0不存在任何输出代码。
code
def connect(self):self.conn=rpyc.classic.connect(“主机名”)self.remote=self.conn.modules.subprocess p1=“sh-vx/tmp/test.sh”self.result=self.remote.Popen(p1,shell=True,stdout=remote.PIPE,stderr=remote.PIPE)out,err=self.result.communicate()打印输出、err返回、err
code
然后仅调用文件1中的一个方法远程系统上
/tmp/test.sh
中的内容?您是否直接从一个函数中尝试过?它有没有在那里的字,它是什么,目前的错误或问题?目前,这个问题相当广泛…没有错误,0不存在任何输出代码。
code
def connect(self):self.conn=rpyc.classic.connect(“主机名”)self.remote=self.conn.modules.subprocess p1=“sh-vx/tmp/test.sh”self.result=self.remote.Popen(p1,shell=True,stdout=remote.PIPE,stderr=remote.PIPE)out,err=self.result.communicate()打印输出、err返回、err
code
然后仅调用文件1中的一个方法远程系统上的
/tmp/test.sh
中有什么?