gpt4 book ai didi

python - 如何添加描述性字符串以断言

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

我喜欢在断言失败时看到一些有意义的描述。

这是我的代码及其执行:

>cat /tmp/1.py
a="aaa" + "bbb"
print(a)
assert ("hello" + a) and 0

>python /tmp/1.py
aaabbb
Traceback (most recent call last):
File "/tmp/1.py", line 3, in <module>
assert ("hello" + a) and 0
AssertionError

我正在使用 Python 3.7。

你知道为什么 "hello"+ a 不作为字符串连接首先求值吗?我怎样才能做到?

[更新] 感谢所有回复,这是我要找的:

>cat /tmp/1.py
a="aaa" + "bbb"
print(a)
assert 0, "hello" + a

最佳答案

According to the docs ,失败消息后跟一个逗号:

assert some_condition, "This is the assert failure message".

这相当于:

if __debug__:
if not some_condition:
raise AssertionError("This is the assert failure message")

如评论中所述,assert 不是函数调用。不要添加括号,否则您可能会得到奇怪的结果。 assert(condition, message) 将被解释为一个元组被用作没有消息的条件,并且永远不会失败。

关于python - 如何添加描述性字符串以断言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57334893/

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