파이썬 리스트-딕셔너리
조회수 694회
리스트에 딕셔너리를 저장한 후 다시 호출하려 하는데
li=[]
dic={}
한 뒤에 반복문에서 밑에 코드 실행시켜서
dic['자리']=int(input('자리 번호'))
dic['가격']=int(input(''메뉴 선택'))
li.append(dic)
리스트에 딕셔너리 저장시킨 후에 자리 번호를 입력하면 그 자리에 해당하는 가격을 불러오고 싶을때는 어떻게 하나요.
li=[{'자리':'가격'}{'자리':'가격'}{'자리':'가격'}.....]
이런 식으로 저장시키고 입력한 자리에 일치하는 가격만 불러오고 싶은데
-
(•́ ✖ •̀)
알 수 없는 사용자 - 〉
1 답변
-
데이터 구조를 그렇게 할 필요가 있나요?
딕셔너리 하나로 되는 구조 같습니다.
자리번호는 고유할 것이므로 자리를 키로 가격을 벨류로 하면 됩니다.
In [1]: D = {} In [2]: D['1'] = 1000 In [3]: D['2'] = 2000 In [4]: D Out[4]: {'1': 1000, '2': 2000}
그럼에도 질문상처럼 해야 된다면...아래와 같은 방법도 있습니다.
In [15]: li=[{'1':'1000'},{'2':'2000'},{'3':'3000'}] In [16]: next(d for d in li if '2' in d) Out[16]: {'2': '2000'}
- 제가 파이썬을 기초밖에 안 배워서 잘 모르는데 In과 Out도 함수인가요? 이해를 못했네요 알 수 없는 사용자 2019.6.18 17:38
- 아니요....ipython 이라는 interative shell 입니다. 정영훈 2019.6.19 02:33
댓글 입력