2012-10-19 29 views
1

問題劊子手在Python - 輔音猜測編碼

guess_letter: 
(str, str) -> str 

第一個參數是所述unguessed輔音,第二個是難度等級。計算機播放器返回輔音,然後被猜測。如果級別簡單,則隨機選擇要猜測的輔音。如果級別爲HARD,輔音可以猜測PRIORITY_CONSONANTS中的第一個輔音出現在第一個參數中。

PRIORITY_CONSONANTS = 'tnrslhdcmpfgybwvkqxjz' 
EASY = 'E' 
HARD = 'H' 

總體來說,這一項目將創造一個功能劊子手遊戲,這是它的一個組成部分,我有我自己的代碼。

我不知道怎麼寫這個,我做了一個小結構,我想解決。但我真的不明白要寫什麼。

我想,當難度是很難使其在優先輔音選擇第一個輔音,在參數出現unguessed輔音 ,當它很容易我想任何隨機輔音出現

+0

請寫一個好的標題實現「硬」模式。我們需要您的幫助,爲您的問題編寫好的標題。 –

+0

如果電平是容易的,可以被隨機選擇的輔音是PRIORITY_CONSONANTS之一? –

+0

它可以是輔音之一,輔音是輔音嗎?它只是更隨機,如果其對易,硬看起來在unguessed輔音和它們的優先級輔音進行比較,猜測看到 – NadiaNimss

回答

1
import random 

EASY = 'E' 
HARD = 'H' 
PRIORITY_CONSONANTS = 'tnrslhdcmpfgybwvkqxjz' 
EASY_CONSONANTS = '' # what should be here? 

def guess_letters(unguessed_consonants, difficulty_level): 
    if difficulty_level == EASY: 
     search_set = EASY_CONSONANTS 
    elif difficulty_level == HARD: 
     search_set = PRIORITY_CONSONANTS 

    for con in unguessed_consonants: 
     if con in search_set: 
      return con 

在迴應納迪亞評論:

KK奏效,除非在硬盤I輸入「ZK」它會給我的z代替KK更好進來的PRIORITY_COž前NSONANTS所以輸出應當在K

在這種情況下,search_set應該遍歷第一:

for con in search_set: 
     if con in unguessed_consonants: 
      return con 
+0

,它適用於EASY級別,但是對於HARD,它應該查看這三個輔音中的第一個參數(比如說'htf') 第一個出現在PRIORITY_CONSONANTS中的是't' 因此它會猜測「T」 – NadiaNimss

+1

的EASY_CONSONANTS將是相同的優先級輔音 – NadiaNimss

+0

KK奏效,除非在硬盤I輸入「ZK」它會給我的z代替ķ更好 ķ來ž之前在PRIORITY_CONSONANTS所以輸出應該是k – NadiaNimss

0

我不會給你答案在這裏。但是你可以使用str.index

>>> 'abcd'.index('b') 
1 

檢查docs更多的文檔

+1

我真的不知道如何使用它 – NadiaNimss