inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

남박사의 파이썬 기초부터 실전 100% 활용

반복문 (for)에서 질문 ㅡ있습니다

242

윤태영

작성한 질문수 22

2

좋은 강의 들려주셔서 감사합니다

list ( i . items ( ) ) [ 0 ]  이 왜 배열의 요소를 튜플로 가져오나요

i의 item은 딕셔너리고 그것을 리스트로 형변환한것의 0번쨰 요소를 가져온것인데

리스트가 튜플로 바뀌는 메커니즘을 모르겠습니다

웹-크롤링 python

답변 1

0

남박사

_dict = {"name": "홍길동", "age": 30, "country": "Korea"}

이런 dict 형태의 데이터가 있다고 가정해보겠습니다.

print(type(_dict.items()) )

이렇게 _dict.items() 의 type을 출력해보면

<class 'dict_items'> 라는 형식으로 리턴이 됩니다. 

이것을 바로 사용할수 없기에 

list(_dict.items())

위 처럼 list 형태로 캐스팅을 하게  됩니다.

그러면 결과는 아래과 같게나옵니다.

[('name', '홍길동'), ('age', 30), ('country', 'korea')]

이렇게 리스트로 캐스팅이 되면서 안의 dict 형태의 인자는 튜플형태로 변환이 되게 되어있습니다.

키: 값 의 형태인 dict 는 iterable 한 데이터 형태가 아닙니다.

iterable 하다는것은 순서가 있는 연속된 자료형태인데 list 가 그렇습니다.

dict 는 iterable 한 데이터가 아니면서 키:값 으로 되어있기 때문에

이것을 iterable 하며 키:값 인 형태로 바꾸자니 튜플형태밖에 없기 때문에 

그렇게 변화 되게 됩니다.

물론  이렇게 직접 사용하지 않고 for 반복문을 통하면 dict 형태를 키와 값 형태로 받아올 수 있습니다.

for key, value in _dict.items():
    print(key, value)

도움이 되셨는지 모르겠습니다. 더 궁금하신점 있으시면 또 질문주세요 ^^

38강 = 연산자 더하고 빼기

0

60

2

주석처리

0

117

1

함수의 파라미터값 msg

0

155

1

강의자료 이미지 안나옴

0

239

3

강의자료 질문 두번째

0

165

3

강의자료 관련 질문

0

116

1

파이썬 예외 처리 try / except 파일 처리 코드가 실행이 안됩니다.

0

235

1

소수 너무 어려워요

0

245

1

imagefont 함수 사용

0

239

1

pylint

0

357

1

add 함수 문의 ㅠㅠ

0

283

1

형식 문의드립니다.

0

210

1

변수 명을 왜 src, tar로 하셨는지 궁금합니다.

0

602

1

숫자야구 코드를 짜 봤는데 뭔가 이상합니다.

0

253

1

zsh: command not found: pylint

0

269

1

텔레그램 봇 만들기 코드 실행이 안됩니다 박사님..ㅠ

0

546

1

질문드립니다.

1

374

2

list.reverse() 출력에 대해서 질문있습니다.

1

433

1

데코레이터 함수 및 동작시간 질문입니다.~

1

323

2

opencv 사용하면서 궁금한점 (해상도)

1

781

1

질문드립니다.

1

299

1

아래 오류가 뜨면서 vscode가 컴파일이 되지 않는데.. 혹시 왜이럴까요?

1

445

1

크롤링안되는 현상 문의 드립니다.

1

421

1

파이썬 크롤링 관련 문의

1

278

1