0

我将以下代码另存为some_file.py

def some_function(num):
    return int(num) + 1


if __name__ == "__main__":
    val = some_function(sys.argv[1])

当我像这样运行脚本时:

some_file.py 10

我想捕捉返回值。我尝试了这种方法,但没有成功:

if __name__ == "__main__":
        val = some_function(sys.argv[1])
        sys.exit(val)
4

1 回答 1

2

退出代码被放入$?

python some_file.py 10
echo $?

将打印11

退出代码是一种有限的机制,它只允许从 0 到 255 的值。通常捕获输出更合适。

if __name__ == "__main__":
    val = some_function(sys.argv[1])
    print(val)

那么你可以使用

somevariable=$(python some_file.py 10)
echo "$somevariable"
于 2020-12-03T06:46:31.173 回答