私信  •  关注

Cory Kramer

Cory Kramer 最近创建的主题
Cory Kramer 最近回复了
4 年前
回复了 Cory Kramer 创建的主题 » 有没有更有效/更好的方法用python编写测试用例?

您应该使用一个实际的单元测试库,比如内置的 unittest 单元

import unittest

def are_anagrams(s1, s2):
    if len(s1) != len(s2):
        return False
    elif sorted(s1) == sorted(s2):
        return True
    else:
        return False
        
class TestAnagrams(unittest.TestCase):
    def test_anagrams(self):
        self.assertTrue(are_anagrams('danger', 'garden'))
        self.assertTrue(are_anagrams('nameless', 'salesmen'))
    def test_not_anagrams(self):
        self.assertFalse(are_anagrams('name', 'sale'))
        self.assertFalse(are_anagrams('n', 'sa'))
        
if __name__ == '__main__':
    unittest.main()
5 年前
回复了 Cory Kramer 创建的主题 » 在python中,如何比较两个独立列表中每个元素的长度?[闭门]

你可以用 max 在一个列表中 len 作为 key 比较器的论据。然后得到一个长度列表,它只是调用 伦恩 在前面列表中的每个元素上。

>>> a = ["AAAA", "BB", "CCC", "DDDDD"]
>>> b = ["E", "FFF", "GGGG", "HH"]
>>> c = [max(i, key=len) for i in zip(a,b)]
>>> c
['AAAA', 'FFF', 'GGGG', 'DDDDD']
>>> d = [len(i) for i in c]
>>> d
[4, 3, 4, 5]