【问题标题】:Python function that will return items from two lists that are the same [duplicate]Python函数将从两个相同的列表中返回项目[重复]
【发布时间】:2015-10-13 20:10:41
【问题描述】:

编写一个函数printCommonLetters(),它有两个输入参数:
lst1lst2,它们是两个字符串列表。
该函数将打印两个列表中相同的项目。
完成两个循环的迭代后,打印一个最终语句,如“完成”或“再见”。

我们在课堂上讨论了如何使用与 for 循环语句中的 for 对齐的非缩进语句恢复执行。

例如如果

lst1 = [ ‘ab’, ‘cd’, ‘ef’, ‘gh’] 
lst2 = [‘abc’, ’geh’, ‘cd’, ‘ab’], 

函数将打印:

‘ab’

‘cd’  
‘goodbye!’ 

我找到了简写的方法,但不是完整的功能。我有它给我回['ab', 'abc'],但不能让它给我'cd'...

这是我目前所拥有的:

def printCommonLetters( lst1, lst2):
    for i in lst1:
       for j in lst2:
            if i is not j:
               return[i,j]

print( printCommonLetters( [ 'ab', 'cd', 'ef', 'gh'],['abc', 'geh', 'cd', 'ab'] ))

print('goodbye!')

【问题讨论】:

  • 我建议你研究一下 Python 的集合操作
  • 请修正您问题中的格式。
  • 这是教授给我的方式,对问题的格式感到抱歉,但我确实是从硬件那里得到的。
  • 我知道有人说这是一个重复的问题,但这不是我的教授想要的格式

标签: python list function


【解决方案1】:

这就是你需要的。没有迭代,只有set

print set(list1)&set(list2)

【讨论】:

  • 这给了我想要的输出!太感谢了!!有没有办法让它下降而不是... {'ab', 'cd'} 但会给出:'ab' 'cd' 不确定她为什么想要这种特定格式,但我很感激获得帮助结果!
猜你喜欢
  • 1970-01-01
  • 2022-11-20
  • 2019-03-07
  • 2020-02-23
  • 1970-01-01
  • 2011-04-18
  • 2014-04-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多