假设我们在test_script.py
内写下以下内容:
sys.exit(-992340374290374)
我们收到以下错误消息:
"[drive_letter]:\[path to python.exe]" [drive_letter]:/[path to script]
Process finished with exit code -1
-1
不是-992340374290374
。发生了什么事?
答案 0 :(得分:5)
来自sys.exit
docs(强调我的):
退出Python。这是通过提升SystemExit来实现的 异常,所以try的finally子句指定的清理动作 声明被尊重,并且可以拦截出口 尝试在外层。
可选参数arg可以是给出退出状态的整数 (默认为零)或其他类型的对象。如果是整数, 零被认为是“成功终止”,任何非零值都是 被贝壳等认为是“异常终止”。 大多数系统 要求它在0-127范围内,并产生不确定的结果 否则。某些系统具有分配特定的约定 特定退出代码的含义,但这些通常是 欠发达; Unix程序通常使用2来执行命令行语法 所有其他类型的错误都有错误和1。如果是另一种类型的对象 传递,None相当于传递零,任何其他对象都是 打印到stderr并导致退出代码为1.特别是 sys.exit(“some error message”)是一种快速退出程序的方法 发生错误。
答案 1 :(得分:1)
这与操作系统处理退出的方式有关。在sys.exit
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<style>
.container {
position: relative;
width: 50%;
}
.image {
opacity: 1;
display: block;
width: 100%;
height: auto;
transition: .5s ease;
backface-visibility: hidden;
}
.middle {
transition: .5s ease;
opacity: 0;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
-ms-transform: translate(-50%, -50%);
text-align: center;
}
.container:hover .image {
opacity: 0.3;
}
.container:hover .middle {
opacity: 1;
}
.text {
background-color: #4CAF50;
color: white;
font-size: 16px;
padding: 16px 32px;
}
</style>
</head>
<body>
<h2>Opacity with Box</h2>
<p>Hover over the image to see the effect.</p>
<div class="container">
<img src="img_avatar.png" alt="Avatar" class="image" style="width:100%">
<div class="middle">
<div class="text">John Doe</div>
</div>
</div>
</body>
</html>
中,它说:
大多数系统要求它在0-127范围内,否则会产生不确定的结果。