如何检查列表中是否有两个相同的字符串

时间:2016-05-15 15:41:24

标签: string list python-3.x

我正在做一个刽子手游戏。我使用一个列表来跟踪你猜测的单词,以及你填写的空白列表。但是我无法弄清楚该做什么,例如某人的单词是apple,而我猜测p

我的直接想法是找到一个字母是否在单词中两次,然后弄清楚它在哪里,当他们猜到那封信时,将它放在那封信的第一和第二位。但我找不到

  1. 如何测试两个STRINGS在列表中是否重复,
  2. 如果我使用list.index测试重复字母的位置,我会找到两个位置,而不只是一个。

2 个答案:

答案 0 :(得分:0)

一种方法是逐个浏览列表,检查是否有两次出现。

def isDuplicate(myList):
    a = []
    index = 0
    for item in myList:
        if type(item) == str:
            if item in a:
                return index
            else:
                a.append(item)
        index += 1
    return False

此功能遍历列表并将目前为止看到的内容添加到另一个列表中。每次它还检查它正在查看的项目是否已经在该列表中,这意味着它之前已经被看到过。如果它通过整个列表而没有任何重复,则返回False

它还跟踪它所在的索引,因此如果找到重复索引,它可以返回该索引。

<小时/>

或者,如果要查找给定字符串的多次出现,可以使用相同的结构并进行一些修改。

def isDuplicate(myList, query):
    index = 0
    foundIndexes = []
    for item in myList:
        if item == query:
            foundIndexes.append(index)
        index += 1
    return foundIndexes

这将返回querymyList所有个实例的索引列表。

答案 1 :(得分:0)

  1. 为您的单词创建一个字符串
  2. 为用户输入创建字符串
  3. 将字符串剪切成字母并将其保存在列表/数组
  4. 获取输入
  5. 将输入剪切成字母并将其保存在另一个数组
  6. 创建一个字符串=&#34; --------&#34;显示消息
  7. 使用for循环检查两个数组列表中的每个位置并进行比较
  8. 如果yourArray [i] == inputArray [i]
  9. 然后更改displayedString [i] = inputArray [i]并显示消息然后获取另一个输入
  10. 如果它与假期不匹配&#34; - &#34;唱
  11. 显示&#34; --- a - b&#34;串