如何在while循环中的每个循环后从字符串中删除一个字符

爱洛杰斯

我正在尝试打印一个包含字母表中字母的字符串。在用户猜出每个字母后,该猜出的字母将从字母表中删除,然后打印在控制台中以显示哪些字母尚未被猜出。

到目前为止,我已经试过remove()translate()filter()每次我尝试时,都会成功删除该字母,但是当需要删除另一个字母时,第一个字母会重新出现在字符串中,而第二个字母现在已被删除。基本上,这些字母不会被移除,只会在那个循环中消失。

背景信息:我正在用 python3 制作一个刽子手应用程序。因此,我遇到问题的部分代码位于函数中的 while 循环中。我正在用 python3 制作一个刽子手应用程序。因此,我遇到问题的部分代码位于函数中的 while 循环中。

alphabet = "abcdefghijklmnopqrstuvwxyz"
guess = " "

print("These letters haven't been guessed yet: " + alphabet.translate({ord(guess): None}))

预期结果:

(请注意,在第二次输入后不会再次出现前一个。)

guess = input("Enter a letter: ")
Enter letter: a
These letters haven't been guessed yet: bcdefghi

guess = input("Enter a letter: ")
Enter letter: h
These letters haven't been guessed yet: bcdefgi

实际结果:(请注意,在用户输入 'h' 后,字母 'a' 再次出现。)

guess = input("Enter a letter: ")
Enter letter: a
These letters haven't been guessed yet: bcdefghi

guess = input("Enter a letter: ")
Enter letter: h
These letters haven't been guessed yet: abcdefgi
保罗·罗德里戈·马丁斯

您可以为此使用集合。首先,您创建一个包含字母表中所有字母的集合。此外,您想跟踪哪些是另一组中的猜测词。然后,每次用户猜出某个字母时,您就将其添加到猜测集中。最后,您只需打印alphabet - guessed. 最后,我只是''.join为了更好的输出格式。

alphabet = set("abcdefghijklmnopqrstuvwxyz")
guessed = set()

guess = "a"
guessed.add(guess)

print("These letters haven't been guessed yet: " + str(alphabet - guessed))
#Output: These letters haven't been guessed yet: {'c', 'd', 'y', 'r', 'i', 'h', 'g', 'o', 'q', 'x', 'v', 'k', 'j', 'z', 'p', 'n', 'u', 'm', 'l', 'b', 't', 'w', 'e', 'f', 's'}

print("These letters haven't been guessed yet: " + ''.join(alphabet - guessed))
#Output: These letters haven't been guessed yet: cdyrihgoqxvkjzpnumlbtwefs

从@MrFuppes 更新:使用该函数sorted按字母顺序打印集合中的元素

print("These letters haven't been guessed yet: " + ''.join(sorted(alphabet - guessed)))
#Output: These letters haven't been guessed yet: bcdefghijklmnopqrstuvwxyz

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在while循环中返回一个字符串

来自分类Dev

将每个对象中的字符串循环为一个字符串

来自分类Dev

展开在循环中向每个元素附加一个字符串的数组元素

来自分类Dev

For 循环一个字符串

来自分类Dev

PHP:在foreach循环中连接一个字符串

来自分类Dev

批处理文件:在for循环中附加一个字符串

来自分类Dev

for循环中的变量是一个字符串

来自分类Dev

PHP:在foreach循环中连接一个字符串

来自分类Dev

如何在列表中每个字符串的末尾添加一个字符?

来自分类Dev

循环一次在一个字符中创建字符串

来自分类Dev

在PHP中循环时缺少最后一个字符串字符

来自分类Dev

如何在循环中特定行的末尾附加一个字符?

来自分类Dev

如何在循环中从每一列获取值并将它们组合成一个字符串

来自分类Dev

使用 for 循环在文件夹的每个文件中查找一个字符串

来自分类Dev

如何从字符串列表中的每个字符串中删除最后一个字符

来自分类Dev

For循环计算一个字符串中重复多少个字符,然后删除重复的字符

来自分类Dev

如何在字符串后附加一个字符?

来自分类Dev

如何在第一个字符后屏蔽字符串

来自分类Dev

如何生成一个字符串中的每个字符之间的随机字符?

来自分类Dev

如果每个字符串中的第一个字符相同,则从数组中的每个字符串中删除第一个字符

来自分类Dev

如何检查一个字符串变量中的每个字母?

来自分类Dev

如何在字符串中的每个单词之后添加一个字符?

来自分类Dev

如何在一行中第一个字符后匹配字符串

来自分类Dev

如何从IronPyhon中的字符串中删除最后一个字符?

来自分类Dev

PHP的:如何修剪循环内的最后一个字符串

来自分类Dev

Java使用嵌套循环在另一个字符串中查找一个字符串出现的次数

来自分类Dev

使用数组和foreach循环从另一个字符串中获取一个字符串

来自分类Dev

使用 for 循环在另一个字符串中查找一个字符串

来自分类Dev

在MATLAB中,如何在单元格数组中每个字符串的开头插入一个字符串?

Related 相关文章

  1. 1

    在while循环中返回一个字符串

  2. 2

    将每个对象中的字符串循环为一个字符串

  3. 3

    展开在循环中向每个元素附加一个字符串的数组元素

  4. 4

    For 循环一个字符串

  5. 5

    PHP:在foreach循环中连接一个字符串

  6. 6

    批处理文件:在for循环中附加一个字符串

  7. 7

    for循环中的变量是一个字符串

  8. 8

    PHP:在foreach循环中连接一个字符串

  9. 9

    如何在列表中每个字符串的末尾添加一个字符?

  10. 10

    循环一次在一个字符中创建字符串

  11. 11

    在PHP中循环时缺少最后一个字符串字符

  12. 12

    如何在循环中特定行的末尾附加一个字符?

  13. 13

    如何在循环中从每一列获取值并将它们组合成一个字符串

  14. 14

    使用 for 循环在文件夹的每个文件中查找一个字符串

  15. 15

    如何从字符串列表中的每个字符串中删除最后一个字符

  16. 16

    For循环计算一个字符串中重复多少个字符,然后删除重复的字符

  17. 17

    如何在字符串后附加一个字符?

  18. 18

    如何在第一个字符后屏蔽字符串

  19. 19

    如何生成一个字符串中的每个字符之间的随机字符?

  20. 20

    如果每个字符串中的第一个字符相同,则从数组中的每个字符串中删除第一个字符

  21. 21

    如何检查一个字符串变量中的每个字母?

  22. 22

    如何在字符串中的每个单词之后添加一个字符?

  23. 23

    如何在一行中第一个字符后匹配字符串

  24. 24

    如何从IronPyhon中的字符串中删除最后一个字符?

  25. 25

    PHP的:如何修剪循环内的最后一个字符串

  26. 26

    Java使用嵌套循环在另一个字符串中查找一个字符串出现的次数

  27. 27

    使用数组和foreach循环从另一个字符串中获取一个字符串

  28. 28

    使用 for 循环在另一个字符串中查找一个字符串

  29. 29

    在MATLAB中,如何在单元格数组中每个字符串的开头插入一个字符串?

热门标签

归档