2016-10-13 18 views
-3

私はこのコードで作業していますが、回答が見つかりません。キーの値が以前と同じかどうかを確認する

  1. 私はa:1b:3を設定したいというように...そして、私は彼らがpoint_lettersと呼ばれる辞書に入れたい2つのリスト

    point_values = [1, 3, 3, 2, 1, 4, 2, 4, 1, 8, 5, 1, 3, 1, 1, 3, 10, 1, 1, 1, 1, 4, 4, 8, 4, 10] 
    
    letters = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'] 
    
  2. を持っています。

これは私のスターターコードです。

point_letters = {} 
point_values = [1, 3, 3, 2, 1, 4, 2, 4, 1, 8, 5, 1, 3, 1, 1, 3, 10, 1, 1, 1, 1, 4, 4, 8, 4, 10] 
letters = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'] 

for x in letters: 
    for i in point_values: 
     if point_letters[x] != i: # is what I'm trying to do 
      point_letters[x] = i 
print(point_letters) 

どうすればよいですか?

+0

の場合は、希望の出力 'dict'と同じ名前の' list'で始まらないようにしてください:)もっと重要なのは、今まで何を試しましたか? –

+0

wooopsとても疲れている私はそれを間違って入力しました – drewteriyaki

+0

あなたが直面している実際の問題は何ですか?key = lettersの辞書に2つのリストを割り当てる:value = point_values? –

答えて

4
point_letters = dict(zip(letters, point_values)) 

zip対応する要素のペアのリストを作成します。 dictは、ペアのリストを辞書に変換します。

EDIT:dict名を変更しました。また、コメントに応じて、投稿コード:

これは素晴らしいですが、私はまだこれを学んでいません。 forループする方法はありますか?

一般に、現実世界では、上記の方法を使用します。 forは非常に低レベルなので、できる限り避けたいと思っています。クラスの場合、私はあなたの問題を解決していますが、代わりにヒントを与えることはありません(それは盗作ではありません):

  • あなたは同じi

  • iためletters[i]point_values[i]をペアリングしますあなたのリストの長さより1少ないあなたは、リストの長さを取得することができます

  • len

  • を使用して - 最大のインデックスに 0から行くべきです
  • 次の2つのループを持つ

    • あなたは

    • を行うために必要なものではありませんあなたのコードで

    、(2パイソン)range(Pythonの3)またはxrangeを使用して範囲を得ることができます
  • ifは本当ではありません。

EDIT2:Pythonは特別なスノーフレークでなければならないため、「配列」を「リスト」に変更しました。

+0

これは素晴らしいですが、私はまだこれを学んでいません。 forループする方法はありますか? – drewteriyaki

+1

@ドリューテリヤキよく、今、あなたはそれを学んでいない*今* ??? –

関連する問題