gpt4 book ai didi

python - 如何将 python ImportError 捕获为 Shell 错误

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

我有以下脚本检查是否安装了 python 模块。

{

ipython -c 'from package import module' && echo "Successful import"

} || echo "package not found!"

这是 bash 的典型 try..catch 语法。如果 && 之前的命令有效,它将执行之后的命令,否则执行 || 之后的命令。

但是在这种情况下,是否安装了package,或者我应该说命令是否存在

ipython -c 'from package import module'

返回NoneImportError,bash 将其读取为成功执行并打印“成功导入”

如何使用 bash 检查是否成功导入了 python 包?

编辑:并以退出状态 1 返回?

最佳答案

您可以对任何不是None0 的消息使用异常SystemExit(msg=None)。如果未被捕获,它将导致程序结束,如果 msg 不是 None0,退出代码为 1。 (参见:https://docs.python.org/3/library/exceptions.html#SystemExit)。

测试.py

try:
import Blue
except ImportError:
raise SystemExit("Import Error!")

在庆典中:

[user]@[host] $ python test.py 
Import Error!

[user]@[host] $ python test.py || echo "blarg"
Import Error!
blarg

[user]@[host] $ python test.py && echo "blarg"
Import Error!

关于python - 如何将 python ImportError 捕获为 Shell 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31187678/

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