gpt4 book ai didi

python:验证条件和引发异常的最佳方法

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

嗨我必须验证向量是否包含全 0 或 1,如果不包含则引发异常:

def assert_all_zero_or_one(vector):
if set(vector)=={0}: return 0
if set(vector)=={1}: return 1
raise TypeError

执行此操作

assert_all_zero_or_one([1,1,1]) # return 1
assert_all_zero_or_one([0,0]) # return 0
assert_all_zero_or_one([1,0,1]) # raise TypeError

我不喜欢这个解决方案..有没有用 python 做的最好方法?

最佳答案

我认为您的解决方案很好地传达了您的意图。你也可以这样做

def assert_all_zero_or_one(vector):
if set(vector) not in ({0}, {1}): raise TypeError
return vector[0]

所以你只构建一次set(vector),但我认为你的更容易理解。

关于python:验证条件和引发异常的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5015775/

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