2016-12-07 6 views
1

私は下のハングマンのような複数行の文字列にインデックスを付けて、誤った単語の数に基づいて正しい文字列を選択できるようにしたいと考えています。下のコードを使用すると、正しい数字のインデックスが作成されず、理由がわかりません。ありがとう。文字列のリストを正しくインデックス化する

a=list({ 

''' 
    | 
    O 
    \| 


''', 

''' 
    | 
    O 
    \|/ 
    | 

''', 

''' 
    | 
    O 
    \|/ 
    | 
    /
''', 

''' 
    | 
    O 
    \|/ 
    | 
    /\ 
''' 
}); 

for i in range(4): 
    print(a[i]) 

出力:

 | 
    O 
    \|/ 
    | 



    | 
    O 
    \|/ 




    | 
    O 
    \|/ 
    | 
    /

    | 
    O 
    \|/ 
    | 
    /
+0

リストを辞書に変えて「注文」フィールドを追加することができます。あるいは、文字列中の空白以外の文字の数に基づいてソートすることもできます。 – SarTheFirst

+0

順序のない集合からリストを構築します。中括弧を削除する: 'a = [" ... "、...]'。 –

答えて

4

あなたは、これは(基本的に順不同コンテナを作成するため{}表記を使用していない、順序が保持されるようにしたい場合はどちらかsetか、あなたのケース-in dictset)。 listに変換しますが、遅すぎる注文はすでに失われています。

は代わりに、ちょうど言う:

a = [ 
    """" 
    first string 
    """, 
    # ... 
] 

角括弧は、注文したコンテナである、listを示します。

1
a=[ 

''' 
    | 
    O 
    \| 


''', 

''' 
    | 
    O 
    \|/ 
    | 

''', 

''' 
    | 
    O 
    \|/ 
    | 
    /
''', 

''' 
    | 
    O 
    \|/ 
    | 
    /\\ 
''' 
] 

for i in range(4): 
    print(a[i]) 
+0

ありがとうございました、他の男が説明しました。私は彼の答えはここでも受け入れています。 – Rik

+0

よろしくお願いします。最後の脚を覚える:\\ – Marvo

関連する問題