为了账号安全,请及时绑定邮箱和手机立即绑定

比较两个字符串列表

比较两个字符串列表

米琪卡哇伊 2021-08-05 18:23:10
我熟悉比较 2 个整数和字符串列表;然而,当比较包含额外字符的 2 个字符串列表时,可能会有点挑战。假设输出包含以下内容,我将其分解为字符串列表。我在我的代码中称它为 diff。输出164c164< Apples = ---> Apples = 0168c168< Berries = ---> Berries = false218c218< Cherries = ---> Cherries = 20223c223< Bananas = ---> Bananas = 10233,234c233,234< Lemons = 2< Strawberries = 4---> Lemons = 4> Strawberries = 2264c264< Watermelons = ---> Watermelons = 524288第二组字符串包含我希望与第一个列表进行比较的忽略变量。>>> ignore['Apples', 'Lemons']我的代码:>>> def str_compare (ignore, output):...     flag = 0...     diff = output.strip ().split ('\n')...     if ignore:...         for line in diff:...             for i in ignore:...                 if i in line:...                     flag = 1...             if flag:...                 flag = 0...             else:...                 print (line)... >>>该代码适用于 Apple 和 Lemons 省略。>>> str_compare(ignore, output)164c164---168c168< Berries = ---> Berries = false218c218< Cherries = ---> Cherries = 20223c223< Bananas = ---> Bananas = 10233,234c233,234< Strawberries = 4---> Strawberries = 2264c264< Watermelons = ---> Watermelons = 524288>>>必须有更好的方法来比较 2 个不是 O(n^2) 的字符串。如果我的差异列表不包含像“Apples =”这样的额外字符,那么可以使用 O(n) 来比较两个列表。在不遍历每个差异元素上的“忽略”变量的情况下进行比较的任何建议或想法?
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 191 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信