【发布时间】:2021-10-14 00:01:28
【问题描述】:
如何正确引发此异常?
import unittest
def second_digit_value4(n): return True if n % 10 == 4 else False
class DigitValue4(unittest.TestCase):
def test_last_digit_value4(self):
self.assertEqual(second_digit_value4(14), True)
self.assertFalse(second_digit_value4(22), False)
with self.assertRaises(ValueError):
second_digit_value4(23)
if __name__ == '__main__':
unittest.main()
【问题讨论】:
-
为什么会在那里引发 ValueError?
-
我是一个完整的菜鸟,这只是为了练习。这是一个练习,我需要确保第二个数字等于 4。创建 Value 错误的目的是为了练习。
-
练习一些应该引发异常的东西。
-
@YoshuaVillar:这里的问题是没有理由为什么
22应该返回False而23死了ValueError。您没有描述区分这两种情况的规则,只是描述何时应该返回True的规则。 -
为什么它会返回
ValueError?当参数类型正确但值无效时使用。但是什么数字对测试最后一位无效?
标签: python exception python-unittest