2
考虑下面的类:如何在Python中的__init __()部分定义一个子进程?
import subprocess
class Fruits():
def __init__(self):
self.TERMINAL_WIDTH = 80
def start(self):
p = subprocess.Popen(["mplayer", "other", "args"])
print "Subprocess started..."
此代码的工作。
为了更好地了解最佳编码实践,我使用Python的PEP 8 linter。该棉短绒抱怨行
p = subprocess.Popen(["mplayer", "other", "args"])
:棉短绒的说,是因为我们定义一个变量(p
),它可能应该去的__init__()
方法来代替。
我想知道如何做到这一点,但。如果我以当前形式将该行转移到__init__()
,则当Fruits()
被实例化时,子流程将开始运行,这不是我想要的。你能帮我吗?
不知道为什么棉短绒会告诉你这一点,除非它被分配到'self'属性,但'p'是本地这里。在任何情况下都知道棉绒可能是错的,在这一点上,你禁用了棉绒(对于那条线)。 –
你能告诉我们a)你正在使用什么棉绒布和b)确切的错误信息(确保你最小的例子产生了这个错误信息)。 –