>

기본적인 파이썬 연습을하고 있는데 다음 목록에서 각 문자열을 나누고 각 도시를 주에 매핑하고 싶습니다. ( ','다음에 오는 주가 정확하다고 가정)

이 작업을 쉽게하기 위해 어떻게 목록 이해력을 사용할 수 있습니까?

cities = ['washington,ct', 'springfield,or', 'riverside,tx', 'franklin,vt', 'lebanon,co', 'dayton,tx', 'las vegas,nm', 'madison,ca', 'georgetown,ct', 'los angeles,tx']

원하는 결과는 다음과 같습니다.

{'washington': 'ct',
 'springfield': 'or',
 'riverside': 'tx',
 'franklin': 'vt',
 'lebanon': 'co',
 'dayton': 'tx',
 'las vegas': 'nm',
 'madison': 'ca',
 'georgetown': 'ct',
 'los angeles': 'tx'}

이것은 목록 이해를 배우기 전에 내가 한 일입니다

splitedList = []
for x in cities:
    splitedList.append(x.split(','))
print(splitedList)
my_dict = dict(splitedList)
print(my_dict)

  • 답변 # 1

    dict 사용  반복 가능으로 :

    dict(s.split(',') for s in cities)
    
    

    출력 :

    {'washington': 'ct',
     'springfield': 'or',
     'riverside': 'tx',
     'franklin': 'vt',
     'lebanon': 'co',
     'dayton': 'tx',
     'las vegas': 'nm',
     'madison': 'ca',
     'georgetown': 'ct',
     'los angeles': 'tx'}
    
    

  • 답변 # 2

    cities = {x[0]:x[1] for x in (y.split(",") for y in ('washington,ct', 'springfield,or', 'riverside,tx'))}
    
    

관련 자료

  • 이전 html - 휴대 기기의 탭에 호버 스타일이 적용되는 이유는 무엇입니까?
  • 다음 예약 된 작업 Windows Server 2003