gpt4 book ai didi

python - 在for循环中获取 "c"的位置?

转载 作者:太空宇宙 更新时间:2023-11-03 18:41:05 24 4
gpt4 key购买 nike

就上下文而言,我正在制作一个基本的刽子手游戏。

在我的代码中我有两个列表。字母[]和显示[]。 Letters[] 是由字符分解的随机生成的单词,如下所示:

['e', 'x', 'a', 'm', 'p', 'l', 'e']

显示[]是一个破折号列表,字母[]中的每个字母都有一个破折号:

['-', '-', '-', '-', '-', '-']

我正在尝试使用 for 循环来检查用户的输入 (var: input) 是否等于 Letters[] 中的任何字母。

def start():
global input
input = raw_input(">")
print input
guess()


def guess():
for c in letters:
if c == input:
#?

start()

我想要做的是:将返回的字母附加到 if 语句中返回的同一位置,并将其替换到显示[]列表中,并用它替换那里的“-”。问题是,我不知道是否可以,或者如何找到返回值c的位置。

最佳答案

使用enumerate()在循环中添加一个计数器:

for i, c in enumerate(letters):
if c == input:
# i is the position.

另一种方法是手动计数:

i = 0
for c in letters:
if c == input:
# i is the position
i += 1

或使用xrange(len(letters))生成索引序列:

for i in range(len(letters)):
if letters[i] == input:
# i is the position

但是 enumerate() 更简洁、更快。

关于python - 在for循环中获取 "c"的位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20500857/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com