学习了python中zip的用法:
>>>a = [1,2,3]
>>> b = [4,5,6]
>>> c = [4,5,6,7,8]
>>> zipped = zip(a,b) # 打包为元组的列表
[(1, 4), (2, 5), (3, 6)]
>>> a = ["abc", "abd", "bbb"]
>>> b = zip(a)
>>> for each in b:
... print(each)
...
('abc',)
('abd',)
('bbb',)
如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用 * 号操作符,可以将元组解压为列表
>>> b = zip(*a)
>>> for each in b:
... print(each)
...
('a', 'a', 'b')
('b', 'b', 'b')
('c', 'd', 'b')
class Solution:
def longestCommonPrefix(self, strs: List[str]) -> str:
result=""
for tmp in zip(*strs):
if len(set(tmp))==1:
result +=tmp[0]
else:
break
return result