반응형
for 루프에서 range ()
및 zip ()
과 같은 함수를 사용하는 방법을 이해합니다. 그러나 나는 range ()
가 유닉스 쉘의 seq
처럼 목록을 출력 할 것으로 예상했습니다. 다음 코드를 실행하면 :
a=range(10)
print(a)
출력은 range (10)
이며 이는 목록이 아니라 다른 유형의 객체임을 나타냅니다. zip ()
은 인쇄 할 때 비슷한 동작을 나타내며 다음과 같은 결과를 출력합니다.
<zip object at "hexadecimal number">
그래서 내 질문은 그것들이 무엇이며, 이것을 만드는 데 어떤 이점이 있으며, 어떻게 그들을 반복하지 않고 목록에 출력을 가져올 수 있습니까?
해결 방법
Python 3을 사용해야합니다.
"lazy"버전은 Python 2.x에도 있지만 이름이 다릅니다 (예 : xrange
및 itertools.izip
).
모든 출력을 익숙한 목록 객체로 한 번에 검색하려면 list
를 호출하여 내용을 반복하고 사용할 수 있습니다.
>>> list(range(3))
[0, 1, 2]
>>> list(zip(range(3), 'abc'))
[(0, 'a'), (1, 'b'), (2, 'c')]
참조 페이지 https://stackoverflow.com/questions/19777612
반응형
'파이썬' 카테고리의 다른 글
파이썬 Python에서 이미지와 텍스트를 포함한 PDF 파일을 어떻게 생성합니까? (0) | 2021.01.02 |
---|---|
파이썬 if 문에서 "in"의 사용 및 의미? (0) | 2021.01.02 |
파이썬 어제 파이썬으로 얻는 방법 (0) | 2021.01.01 |
파이썬 Django REST Framework serializer 필드 필수 = false (0) | 2021.01.01 |
파이썬 How to stop/terminate a python script from running? (0) | 2021.01.01 |
댓글