python - 用 os.getpid() 加咖啡因 pid
问题描述
我是初学者,我希望我的 macOS 在当前的 python 进程终止之前不要休眠。这是我的 python 代码,我使用了咖啡因
import os
import subprocess
t=os.getpid()
subprocess.run(['caffeinate','-u','-w',t])
print("something...")
但它得到了错误
Traceback (most recent call last):
File "/Users/davidkyan/Desktop/demo.py", line 4, in <module>
subprocess.run(['caffeinate','-u','-w',t])
File "/opt/anaconda3/lib/python3.7/subprocess.py", line 488, in run
with Popen(*popenargs, **kwargs) as process:
File "/opt/anaconda3/lib/python3.7/subprocess.py", line 800, in __init__
restore_signals, start_new_session)
File "/opt/anaconda3/lib/python3.7/subprocess.py", line 1482, in _execute_child
restore_signals, start_new_session, preexec_fn)
TypeError: expected str, bytes or os.PathLike object, not int
请帮助我出了什么问题,它只是一个简单的代码。
解决方案
错误是由t
哪个引起的int
尝试更改代码如下 -
import os
import subprocess
t=os.getpid()
subprocess.run(['caffeinate','-u','-w',str(t)])
print("something...")
推荐阅读
- azure-devops - 构建失败的 Azure Devops 管道能否在使用 CI 触发时向用户显示最后一次提交?
- android - 如何在移动设备上获取栏之间的视口高度?(反应)
- javascript - 如何在 npm 模型的反应代码中访问 Makehuman.js
- jenkins - 如何配置为使用给定访问令牌的 GitLab 组自动填充 Jenkins 选择参数
- c# - 如何在一行上显示一个字符串x次C#
- android - Compose BasicTextField 的问题:
- python-3.x - asyncio.create_task 创建的任务的容器
- android - 当我调用 api 时,Retrofit2 返回 999
- reactjs - 如何在我的 react.js 程序中添加自动递减时区?
- php - 此路由不支持 DELETE 方法。支持的方法:GET、HEAD、POST。在 laravel 7'