簡體   English   中英

如何在Python中使用stepper變量遍歷列表?

[英]How to iterate through a list using a stepper variable in Python?

我正在嘗試編寫一個函數,該函數在輸入可猜測字符和要猜測的機密的情況下返回hangman風格的輸出。 我通過使一個新的列表啟動a設置為-多次秘密的長度。 然后,我遍歷此變量並測試a[stepper] == letter ,其中letter是我們循環遍歷的walker。

目前,為了跟蹤此步進器,我正在使用此代碼

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

我在這里使用的letter_count有內置功能嗎?

使用如下的enumerate()內置函數:

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

您可以使用join和理解力來動態創建顯示的單詞。 猜測存儲在set ,三元運算符檢查是否應顯示字母或-

>>> 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'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM