Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Python中使用stepper变量遍历列表?_Python_Variables_For Loop_Iteration - Fatal编程技术网

如何在Python中使用stepper变量遍历列表?

如何在Python中使用stepper变量遍历列表?,python,variables,for-loop,iteration,Python,Variables,For Loop,Iteration,我正在尝试编写一个函数,在给定猜测字符的输入和要猜测的秘密的情况下,返回一个hangman风格的输出。我首先创建一个新的列表a,将其设置为-密码长度的倍。然后,我迭代这个变量,并测试当我们循环通过时,a[stepper]==letter,其中letter是步行器 目前,为了跟踪这个步进机,我正在使用这个代码 a = ["-"] * len(secret) for curr in guessed: letter_count = 0 # Stepper for letter in

我正在尝试编写一个函数,在给定猜测字符的输入和要猜测的秘密的情况下,返回一个hangman风格的输出。我首先创建一个新的列表
a
,将其设置为
-
密码长度的倍。然后,我迭代这个变量,并测试当我们循环通过时,
a[stepper]==letter
,其中
letter
是步行器

目前,为了跟踪这个步进机,我正在使用这个代码

a = ["-"] * len(secret) 
for curr in guessed:
    letter_count = 0  # Stepper
    for letter in secret:
        if curr == letter:
            a[letter_count] = curr
        letter_count += 1
我在这里使用的
字母计数
是否有内置功能?

像这样使用内置功能:

a = ['-'] * len(secret)
for curr in guessed:
    for i, letter in enumerate(secret):
        if curr == letter:
            a[i] = curr
使用如下内置函数:

a = ['-'] * len(secret)
for curr in guessed:
    for i, letter in enumerate(secret):
        if curr == letter:
            a[i] = curr

您可以使用和理解动态创建显示的单词。猜测存储在a中,三元运算符检查字母或
-
是否应显示:

>>> word = "hangman"
>>> guessed = set()
>>> ''.join(letter if letter in guessed else '-' for letter in word)
'-------'
>>> guessed.add('a')
>>> ''.join(letter if letter in guessed else '-' for letter in word)
'-a---a-'
>>> guessed.add('m')
>>> ''.join(letter if letter in guessed else '-' for letter in word)
'-a--ma-'
>>> guessed.add('e')
>>> ''.join(letter if letter in guessed else '-' for letter in word)
'-a--ma-'
>>> guessed.add('n')
>>> ''.join(letter if letter in guessed else '-' for letter in word)
'-an-man'

您可以使用和理解动态创建显示的单词。猜测存储在a中,三元运算符检查字母或
-
是否应显示:

>>> word = "hangman"
>>> guessed = set()
>>> ''.join(letter if letter in guessed else '-' for letter in word)
'-------'
>>> guessed.add('a')
>>> ''.join(letter if letter in guessed else '-' for letter in word)
'-a---a-'
>>> guessed.add('m')
>>> ''.join(letter if letter in guessed else '-' for letter in word)
'-a--ma-'
>>> guessed.add('e')
>>> ''.join(letter if letter in guessed else '-' for letter in word)
'-a--ma-'
>>> guessed.add('n')
>>> ''.join(letter if letter in guessed else '-' for letter in word)
'-an-man'


什么是
a
?不是最好的变量名…@DeepSpace
a
是一个集合长度的破折号列表如果
a='-'*len(secret)
,那么
curr
什么时候不是
-
?@PatrickHaugh谢谢你的观点,我把代码复制错了我反复浏览
猜测
不是
a
你不能在原地更改字符串中的字符,你必须创建一个新的<代码>''。连接([letter if letter in gusted else'-'for letter in secret])什么是
a
?不是最好的变量名…@DeepSpace
a
是一个集合长度的破折号列表如果
a='-'*len(secret)
,那么
curr
什么时候不是
-
?@PatrickHaugh谢谢你的观点,我把代码复制错了我反复浏览
猜测
不是
a
你不能在原地更改字符串中的字符,你必须创建一个新的<代码>''。连接([字母如果字母在猜测中,则表示字母在秘密中])变量
a
必须是
列表
dict
。如果它是一个
列表
它必须与
secret
具有相同的长度。列表是否与secret具有相同的长度您正在创建一个新的
a
列表?是,在函数的开头,
a
是由一个循环定义的,该循环使它成为一个与秘密长度相同的破折号列表。@Travis I在这里也定义了list
a
,以确保完整性。变量
a
必须是一个
list
dict
。如果它是一个
列表
它必须与
secret
具有相同的长度。列表是否与secret具有相同的长度您正在创建一个新的
a
列表?是,在函数的开头,
a
是由一个循环定义的,该循环使它成为一个与秘密长度相同的破折号列表。@Travis I在这里定义了list
a
,以确保完整性。