-
[Python Basic] zip()과 Dict(), enumerate() 로 리스트를 딕셔너리로 바꾸기Codes & Programming 2021. 7. 22. 23:43
두 개의 리스트 혹은 하나의 리스트와 Numbering 으로 딕셔너리 키-벨류 만들기
zip(리스트, 리스트)
zip()친구 이용해서 친구짝꿍만들기
a = ['A', 'B', 'C'] b = [1,2,3] dict(zip(a,b)) """ [out] {'A': 1, 'B': 2, 'C': 3} """ trans_to_dic = { a_:b_ for a_,b_ in zip(a,b) } print(trans_to_dic) """ [out] {'A': 1, 'B': 2, 'C': 3} """
Dictionary comprehension -> enumerate()응용
- { key : value for문 }
- enumerate(리스트)
a = ['A', 'B', 'C'] dict_ = { capital: 0 for capital in a } #{key : value for [key] in list} print(dict_) """ [OUT] {'A': 0, 'B': 0, 'C': 0} """ #enumerate(리스트) 사용하여 넘버링하기 dict2_ = {capital:i for i, capital in enumerate(a)} print(dict2_) """ [OUT] {'A': 0, 'B': 1, 'C': 2} """
enumerate() 조금 더
number = [1, 10, 100, 1000, 10000, 100000] for i in enumerate(number): print(i) """ [out] 튜플형식으로 나온다. (0, 1) (1, 10) (2, 100) (3, 1000) (4, 10000) (5, 100000) """
인덱싱 넘버도 변수로 사용할 수 있다.
for i, v in enumerate(number): print(f"order : {i}, value: {v}") """ [out] order : 0, value: 1 order : 1, value: 10 order : 2, value: 100 order : 3, value: 1000 order : 4, value: 10000 order : 5, value: 100000 """
스타드 넘버도 지정해줄 수 있다. start=숫자 넣어주면된다
userlist = ['A', 'B', 'C'] userlist = {i:user for i, user in enumerate(userlist, start=1)} print(userlist) """ [out] {1: 'A', 2: 'B', 3: 'C'} """
'Codes & Programming' 카테고리의 다른 글
[모듈] from이 언제고 import가 언제더라 ? __name__이 뭔데? (0) 2021.07.27 [csv] 읽고 쓰기 (0) 2021.07.27 [git/conda] 명령어 모음 (0) 2021.07.08 [Pandas/Matplotlib] 소소하지만 알면 좋은 팁 (판다스 포맷, 플랏 한글폰트 깨짐, 화질 설정 등) (0) 2021.07.01 [Kaggle] Bike Sharing Demand - 자전거 수요 예측 경진대회(RandomForestRegression) (0) 2021.06.13