python 辞書の値を取り出したい。

前提

値をソートするために辞書の値をリストに入れなお
したい

実現したいこと

値をソートするために辞書の値をリストに入れなお
したい

line 100, in <module> s1[i][j-APPL]=s[i][j] KeyError: 0

該当のソースコード

python

APPL=80UNIV=10# 学生番号I=list(range(APPL))print(‘学生番号: , I)print(‘\n’)# 大学番号J=list(range(APPL, APPL+UNIV))print(‘大学番号: , J)print(‘\n’)# 定員数u = {j : APPL/(2*UNIV) for j in J}#u = [APPL/(2*UNIV)] * UNIVprint(‘定員数: , u)print(‘\n’)# 直積ACac=[(i, j) for i in I for j in J]print(‘直積AC: , ac)print(‘\n’)# 志望順位リストnap = [100]napl=nap*(APPL*UNIV)r=dict(zip(ac, napl))print(‘志望順位リスト全部100: , r)# 得点pt=[-1]ptl=pt*(APPL*UNIV)s=dict(zip(ac, ptl))print(‘得点全部-1: , s)print(‘\n’)# 出願Eapplication=[(i, j) for i in I for j in (random.sample(range(APPL, APPL+UNIV), 5))]print(‘出願: , application)print(‘\n’)# 得点slist=random.sample(range(10001), APPL*5)print(‘得点ランダム: , slist)print(‘\n’)snew=dict(zip(application, slist))print(‘出願の得点: , snew)print(‘\n’)s.update(snew)print(‘得点全部: , s)print(‘\n’) # S_jsarryn=[[[0]*APPL]*UNIV]*APPL s1=[[[0]*APPL]*UNIV]*APPL for i in I: for j in J: s1[i][j-APPL]=s[i][j]for j in J: sarry=sorted(s[i][j-APPL], key=lambda y:y[j-APPL]) for i in I: sarryn[i][j-APPL]=sarry[i][j-APPL]

試したこと

s[i][j]のようではなくgetで取り出したらいいのではないかと考えましたが、キーがタプルの場合はどのようにget()をつかえばいいのでしょうか

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

コメントを投稿

0 コメント