我想要一个给定列表的python函数
mystrings = ['abcde', 'abcdf', 'abcef', 'abcnn']
返回字符串 'abc',即列表中所有元素包含的最长片段。我有一个解决方案,它只是循环遍历 mystring[0]
的切片,并将其与其余部分进行比较,并在找到第一个不匹配的子字符串时跳出循环。但是,我怀疑一定有一种更高效、更优雅、更像 Python 的方式来做到这一点。
有人可以指出如何正确执行此操作吗?
最佳答案
按照你描述的方式,你想要起点处的最大子串:
>>> os.path.commonprefix(['abcde', 'abcdf', 'abcef', 'abcnn'])
'abc'
关于python - python中字符串的最大公约数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7879194/