• 목록
  • 아래로
  • 위로
  • 10
  • 초보
  • 조회 수 222

파이썬for문에서

for i in range(1, 7, 2):

  print(i)

1, 3, 5가 출력되는 이유.

이게무슨뜻인지 이해가 안갑니다.(이해가 갈필요도 없습니다.)

랩퍼투혼님 랩퍼투혼 포함 3명이 추천

추천인 3

댓글 10

OAUTH2
+3

start : 1
end : 7
간격 : 2
즉 1+2*0, 1+2*1, 1+2*2

 

1+2*3 >= 7이라서 제외

comment menu
2021.02.19. 11:49

신고

"OAUTH2님의 댓글"

이 댓글을 신고 하시겠습니까?

NoYeah
profile image
+2
range(1, 7, 2) 뜻 : 1이상 7미만의 범위에서 2개씩 뛰어 셀 때
for : 반복
i : 변수

for i range(1, 7, 2) >
1이상 7미만에 수 중에서 2씩 뛰어넘으며 나온 수를 변수 i 에 저장

print(i) > 위에 저장된 변수 표시
comment menu
2021.02.19. 14:21

신고

"NoYeah님의 댓글"

이 댓글을 신고 하시겠습니까?

이니스프리 → NoYeah
profile image
+1

오오~ 쩌네요! ^-^

파이썬의 for 문은 사실상 다른 언어의 foreach 문에 해당하기 때문에 더욱 난해한 것 같네요.

사족이지만 파이썬 3.X에서 range() 함수는 range 객체를 생성합니다.
마스터 님께서도 즐거운 주말 되세요오~! :)

comment menu
2021.02.19. 18:58

신고

"이니스프리님의 댓글"

이 댓글을 신고 하시겠습니까?

NoYeah → 이니스프리
profile image
+1

저는 조건문이 걸릴때 주로 for문을 사용하고
평소 loop에서는 while문이 더 익숙하더라구요. ㅠㅠ

요즘 php 공부중인데 for와 foreach 구분중입니다.
파이썬에서 배우던 for문과 비슷하면서 다르더군요.

 

무엇보다 본문 글의 경우 저는 아직 능력이 부족해

range(1,7) 로 두고 i가 2로 나눴을 때 나머지가 0이 아닌 경우들을 걸러내도록 초보 코딩을 합니다.

comment menu
2021.02.19. 20:29

신고

"NoYeah님의 댓글"

이 댓글을 신고 하시겠습니까?

이니스프리 → NoYeah
profile image
+1

저도 프로페셔널한 개발자가 아니기 때문에 감히 말씀드릴 자격은 없지만,
제 주관적인 생각을 적어보겠습다 ^^

(반드시 이런 법칙이 있다고 볼 수는 없지만)
다른 언어에서 for 문과 foreach 문이 모두 존재하는 것이 일반적인 반면,
파이썬에서는 iterable한 객체에 대하여는 for 문을 사용하고,
그렇지 않은 경우에는 while 문을 사용하는 경향이 있다고 생각합니다.

말씀하신 방법으로 '나머지'가 0인지 여부를 확인하는 것도 다른 언어에서도 통용되는 매우 보편적인 방법이지만,
적어도 파이썬에서는 range() 함수의 세 번째 인자를 사용하는 것이 보다 파이써닉한 방법인 것으로 생각됩니다!

 

결론적으로 iterator를 잘 사용할 수 있도록 공부하는 것이 파이썬에서 굉장히 어려운 것 같아요.

그리고 PHP도 공부하고 파이썬도 공부하면서 양자를 비교하면 더 많은 것을 배울 수 있는 것 같습니다 ^^

(솔직히 파이썬으로 크롤링하다가 PHP로 크롤링하려면 좀 답답하기는 하더군요 ㅠㅠ)
그럼 즐거운 불금 되세요 :)

comment menu
2021.02.19. 21:59

신고

"이니스프리님의 댓글"

이 댓글을 신고 하시겠습니까?

OAUTH2 → 이니스프리
+2
#include <stdio.h>

int main(void) {
  for (int i = 1; i < 7; i += 2)
    {
      printf ("%d\n", i);
    }
  return 0;
}

저는 사실 C언어 형식의 for 문이 조금 더 직관적인 듯 하군요.....

comment menu
2021.02.22. 09:11

신고

"OAUTH2님의 댓글"

이 댓글을 신고 하시겠습니까?

이니스프리 → OAUTH2
profile image
+1

옙 저도 말씀하신대로 for 문과 foreach 문을 별도로 두는 것이 보다 직관적이라고 생각됩니다 :)

while 문과 for 문이 결과적으로 중복되는 부분이 분명히 있지만, 용법에 있어서 완전히 동일하다고 보기는 어렵기도 하구요~
파이썬의 문법적 간결함이 반드시 직관성으로 귀결되지는 않는 것 같네요 ㅠㅠ
그럼 굿밤 되세요 :)

comment menu
2021.02.22. 20:50

신고

"이니스프리님의 댓글"

이 댓글을 신고 하시겠습니까?

신고

"이니스프리님의 댓글"

이 댓글을 신고 하시겠습니까?

초보 작성자
감사합니다
comment menu
2021.02.20. 11:10

신고

"초보님의 댓글"

이 댓글을 신고 하시겠습니까?

랩퍼투혼 → 초보
profile image
+1
초보님 힘내삼 토닥
comment menu
2021.02.23. 00:09

신고

"랩퍼투혼님의 댓글"

이 댓글을 신고 하시겠습니까?

권한이 없습니다.
번호 제목 글쓴이 날짜 조회 수
공지 [작업 완료] 설 명절 맞이 서버 업데이트 안내 3 마스터 24.02.11.17:21 607
공지 [중요] 호스팅 만료와 관련하여 일부 수칙이 변경됩니다. 4 마스터 23.01.14.02:23 4286
공지 [필독] 질문하는 방법 17 마스터 18.02.23.03:09 4473
922 계속 사용중이던 네트워크 공유 폴더가 갑자기 액세스 불가라고 뜹니다. 6 image 장윤서 18.06.07.16:55 34337
921 팀뷰어 대체할 원격 제어 프로그램 추천 부탁드립니다 16 이니스프리 17.11.30.15:38 32325
920 엑셀 그래프의 축 간격 조절 문제입니다. 2 image 국내산라이츄 17.08.10.11:06 12491
919 아이폰/아이패드 충전기 발열 관련 질문 드립니다 9 image 이니스프리 19.05.02.22:52 11108
918 에러 523 해결법 4 입체그림 20.02.21.16:48 6701
917 PyQt 실행시 프리징 현상 관련하여 질문 드립니다! ㅠㅠ 3 이니스프리 19.07.06.03:37 6700
916 프린터가 지 맘대로 프린트를 하네요. 3 곰도리푸 18.04.04.18:20 6050
915 윈도우용 메일 클라이언트가 필요합니다. 9 네모 18.01.11.20:15 5867
914 크롬에서 특정 사이트 접속 문제 관련하여 질문 드립니다 9 이니스프리 17.03.27.18:03 5321
913 오라클 클라우드 프리티어 가입이 안 되네요 ㅠㅠ 20 이니스프리 20.06.26.21:31 4840
912 파이썬 에디터로 어떤 것이 좋나요? 14 NoYeah 20.01.08.21:08 4531
911 라떼판다와 라즈베리 파이 중 어느 쪽을 사는 게 나을까요? 9 제르엘 18.10.14.19:25 3835
910 나무 위키의 수익구조는 무엇일까요? 2 NoYeah 18.03.18.15:56 3832
909 파티션 복구 프로그램 TestDisk 잘 아시는 분 계시나요? 29 이니스프리 17.11.10.14:53 3746
908 IE11에서 이미지가 깨지는 현상을 해결할 수 있을까요? 2 이니스프리 19.08.02.00:01 3704
907 파일질라로 연결하니까 보안되지 않은 서버입니다. TLS를 통한 FTP를 지원하지 않습니다. 이렇게떠요 해결방안좀 1 마카오 16.09.11.00:57 3656
906 자바스크립트 FormData와 관련된 메서드의 IE 호환성과 관련하여 질문 드립니다 ^^ 6 image 이니스프리 19.08.05.14:22 3431
905 선택약정 안 되는 중고폰의 경우에는 어떤 단점이 있는 것인가요?? 6 이니스프리 20.01.21.14:30 3101
904 집에서 시놀로지 NAS로 워드프레스나 미디어위키 돌리면 느릴까요? 10 이니스프리 17.01.16.20:56 2980
903 [Requests] multipart/form-data의 전송에 대해 질문 드립니다 ^^ 4 이니스프리 19.12.18.22:00 2956