gpt4 book ai didi

python - 使用子进程调用从 python 函数重新启动 Linux 服务器

转载 作者:太空宇宙 更新时间:2023-11-04 03:48:04 25 4
gpt4 key购买 nike

我无法在 python 的函数内部重新启动 suprocess 调用。

这是代码

#!/usr/bin/python
import subprocess
def rebootscript():
print "rebooting system"
command = "/sbin/reboot"
subprocess.call(command, shell = True)

if __name__ == '__main__':
rebootscript

如果我从主代码(不在函数中)运行相同的代码,它就可以工作。我究竟做错了什么?

最佳答案

尝试调用实际函数:

if __name__ == '__main__':
rebootscript()

表达式rebootscript将简单地计算出函数对象而不调用它。如果您在解释器中执行此操作,您将看到类似以下内容的内容:

<function rebootscript at 0xffe1b7d4>

括号意味着您想要调用该函数而不是仅仅评估它,差异可以在以下记录中看到:

$ python
Python 2.7.8 (default, Jul 28 2014, 01:34:03)
[GCC 4.8.3] on cygwin
Type "help", "copyright", "credits" or "license" for more information.

>>> def rebootscript():
... print "Hello"
...

>>> rebootscript
<function rebootscript at 0xffe1bed4>

>>> rebootscript()
Hello

>>> _

关于python - 使用子进程调用从 python 函数重新启动 Linux 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27289053/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com