파이썬배열 도움부탁드립니다...

파이썬배열 도움부탁드립니다...

QA

파이썬배열 도움부탁드립니다...

본문

파이썬배열 도움부탁드립니다

 

num_list = [101, 102, 103, 104, 105, 106, 107, 108, 109, 110, ...]

 

배열에서 반복문 사용하지않고 짝수만 출력하는 방법이 있습니까

이 질문에 댓글 쓰기 :

답변 2

안녕하세요? ^^

우선 Python은 자체적인 배열(array)를 갖고 있지 않다는 점을 말씀드리고 싶네요~

https://www.w3schools.com/python/python_arrays.asp

다만 Python에서는 리스트가 배열을 대신할 수 있어요 :)

참고로 배열과 리스트의 차이점은 아래 문서를 참조하세요!

https://gammabeta.tistory.com/2092

 

Python은 자체적인 슬라이싱 기능이 강력(!)하기 때문에

다른 함수를 사용하지 않고 슬라이싱만으로도 말씀하신 기능을 구현할 수 있어요 ^^

 


num_list = [101, 102, 103, 104, 105, 106, 107, 108, 109, 110]
num_even_list = num_list[1::2]
print(num_even_list)

 

슬라이싱은 [인덱스 시작:인덱스 끝:증가폭] 순으로 구성되어 있어요~ ^^

만약 '인덱스 끝'을 지정하지 않으면 마지막 인덱스까지를 의미하고

'증가폭'을 지정하지 않으면 +1을 의미해요~

참고로 '증가폭'을 -1을 주면 .reverse() 메서드와 동일한 효과가 있어요!

그럼 즐거운 불금 되세요 :)

 

+)

리스트 컴프리헨션을 좁은 의미의 '반복문'이 아니라고 본다면

다음과 같이 작성할 수도 있겠네요 ^^

num_even_list = [x for x in num_list if x % 2 == 0]

또는 num_even_list = [x for x in num_list if not x % 2]

또는 num_even_list = [x for x in num_list if not x & 1]

https://lovelydiary.tistory.com/36

 

list(range(처음시작할 원소값, 끝날 원소값+1, 원소들 사이의 간격값))

답변을 작성하시기 전에 로그인 해주세요.
전체 253
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT