일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 프로그래밍 독학
- 앱제작
- Do it 안드로이드 앱 프로그래밍
- 가상화폐거래소
- 비트코인
- 신정동아파트
- 가상화폐
- 블록체인
- 앱개발 독학
- 신정뉴타운롯데캐슬
- 파이썬
- 상위노출키워드
- 안드로이드 스튜디오
- 키워드검색방법
- 온라인마케팅
- 프로그래밍
- 서울3억대아파트
- 앱개발
- 스팀잇
- 돈버는정보
- 신월동아파트
- 프로그래밍독학
- 잠금화면앱
- 가상화폐폭락
- 모두의파이썬
- 안드로이드
- 정부지원제도
- 암호화폐
- 양천구아파트
- 유튜브
- Today
- Total
친절한 J의 돈버는 정보
프로그래밍 독학 파이썬 Day 3. 똑같은 작업 반복 (for 명령사용) 본문
프로그래밍 독학 파이썬 Day 3.
* 똑같은 작업 반복 (for 명령사용)
* 변화주며 반복 (range 명령사용)
* 거북이 그래픽으로 그림 그리기
* 똑같은 작업 반복 (for 명령사용)
파이썬에서 for 명령어 = '~동안 반복하여 실행하라'
1. Hello! 반복 출력해보기
예제 소스
for x in range(10) : 은 이 명령 아래의 들여쓰기 된 부분을 열 번 반복하라는 의미
문장 끝의 콜론(:)은 반복할 영역의 시작을 알리는 기호
다음으로 반복할 문장이 어디까지인지 파이썬에게 알려줘야 하는데 이럴 때 쓰는 것이 들여쓰기!
실행 결과
2. 반복 블록
: 어디서부터 어디까지 반복할지 지정하는 것
예제 소스
실행 결과
파이썬에서는 들여쓰기하여 입력한 문장의 묶음을 블록이라고 함
들여쓰기한 마지막 print(300)은 블록에 속하지 않음
3. 반복 기능으로 도형 그리기
예제 소스
실행 결과
* 변화주며 반복 (range 명령사용)
파이썬에서 range = 반복할 범위를 지정하는 명령어
1. for 명령어로 숫자를 반복하여 출력
예제 소스
range(5)는 0, 1, 2, 3, 4로 값을 5개 가짐
range(a, b)는 a에서 시작해서 b 바로 앞의 값까지 1씩 늘리면서 반복하는 것을 의미
실행 결과
2. 1부터 10까지 숫자의 합계 구하기
예제 소스
실행 결과
이 예제는 1부터 10까지 숫자를 더한 값을 보여주는 프로그램
숫자를 계속 더하려면 더한 결과를 지정할 변수가 필요한데, 여기서는 s라는 변수를 사용함.
숫자를 더하기 전 S = 0으로 지정
s = s+x는 지금까지 더한 합(s)에 x 값(반복할 때마다 1씩 증가)을 더해 그 값을 다시 s에 저장하라는 문장.
마지막 print("x:", x, " sum:", s)도 들여쓰기 되었으므로 반복 블록에 포함되므로 반복할 때마다 현재의 X값과 s값을 계속 출력함.
-> 이건 답이 왜 저렇게 되는지는 알겠는데 과정이 확실히 이해가 안된다.;;;;;
아오... 나 학창 시절애도 수포자... 수학 너무 싫어하고 심지어 막 반타작도 해봤는데 지금 이러고 있다. ㅡ.,ㅡ
< 파이썬에서 변수 이름 정하기 >
- 영문 대/소문자, 숫자, 밑줄(_)로만 만들 수 있음
- 변수이름에는 공백을 사용할 수 없음
- 숫자로 시작할 수 없음 ex) 3name..
- 파이썬이 문법으로 사용하는 단어는 사용할 수 없음 ex) False, None, True, and, as, import, not, or, pass, del, except, for, in, is, try, with 등등
: 너무 길지 않고 변수에 저장된 정보가 무엇인지 예상할 수 있는 이름이라면 더욱 좋음
* 거북이 그래픽으로 그림 그리기
거북이 그래픽 명령어
함수 |
설명 |
사용 예 |
forward / fd(거리) |
거북이가 앞으로 이동합니다. |
t.fd(100) # 거북이가 100만큼 앞으로 이동합니다. |
backward / back(거리) |
거북이가 뒤로 이동합니다. |
t.back(50) # 거북이가 50만큼 뒤로 이동합니다. |
left / lt(각도) |
거북이가 왼쪽으로 회전합니다. |
t.lt(45) # 거북이가 45도 왼쪽으로 회전합니다. |
right / rt(각도) |
거북이가 오른쪽으로 회전합니다. |
t. rt(45) # 거북이가 45도 오른쪽으로 회전합니다. |
circle(반지름) |
현재 위치에서 원을 그립니다. |
t.circle(50) # 반지름이 50인 원을 그립니다. |
down( ) / pendown( ) |
펜(잉크 묻힌 꼬리)을 내립니다. |
t.down # 이제 움직이면 그림이 그려집니다. |
up( ) / penup( ) |
펜(잉크 묻힌 꼬리)을 올립니다. |
t.up # 거북이가 움직여도 선이 그려지지 않습니다. |
shape("모양") |
거북이 모양을 바꿉니다. |
t.shape("turtle") # 진짜 거북이 모양으로 지정합니다. t.shape("arrow") # 화살표 모양의 거북이로 지정합니다. : 거북이 모양으로 "circle", "square", "triangle"을 사용할 수 있습니다. |
speed(속도) |
거북이 속도를 바꿉니다. |
t.speed(1) # 가장 느린 속도 t.speed(10) # 빠른 속도 t.speed(0) # 최고 속도 |
pensize(굵기) / width |
펜 굵기를 바꿉니다. |
t.pensize(3) # 굵은 선으로 선을 그립니다. |
color("색이름") |
펜 색을 바꿉니다. |
t.color("red") # 빨간색으로 선을 그립니다. |
bgcolor("색이름") |
화면의 배경색을 바꿉니다. |
t.bgcolor("black") # 배경색을 흰색에서 검정색으로 바꿉니다. |
fillcolor("색이름") |
도형내부를 칠하는 색을 바꿉니다. |
t.fillcolor("green") # 녹색으로 도형내부를 칠합니다. : 색상을 따로 지정하지 않으면 현재 색으로 칠합니다. |
begin_fill( ) |
도형내부를 색칠할 준비를 합니다. |
t.begin_fill( ) # 거북이 움직임을 색칠할 준비를 합니다. |
end_fill( ) |
도형내부를 색칠합니다. |
t.end_fill( ) # begin_fill( ) 이후부터 지금까지 그린 그림에 맞춰 내부를 색칠합니다. |
showturtle( ) / st( ) |
거북이를 화면에 표시합니다. |
t.st( ) # 거북이를 화면에 표시합니다.(기본상태) |
hideturtle( ) / ht( ) |
거북이를 화면에서 가립니다. |
t.ht # 거북이를 숨깁니다. |
clear( ) |
거북이를 그대로 둔 채 화면을 지웁니다. |
t.clear( ) |
reset( ) |
화면을 지우고 거북이도 원래 자리와 상태로 되돌립니다. |
t.reset( ) |
1. 정오각형 그리기
예제 소스
실행 결과
모든 다각형의 외각의 합은 360도.
정n각형에는 모두 n개의 외각이 있는데 이 값은 모두 같으므로 한 외각의 크기는 360/n이 된다.
t.lt(360/n)으로 360/n도씩 회전하면서 같은 거리를 전진하면 정다각형이 그려지는 원리.
2. 원 반복해서 그리기
예제 소스
실행 결과
동영상으로 찍어 본 모습
t.circle(80) -> t.circle(x*2) 변경하여 달팽이 등껍질 같은 모양을 얻었다.
3. 선 반복해서 그리기
여기서 for x in range(200): 은 x 값을 0에서 199까지 바꾸면서 200번 실행한다는 의미이다.
t.fd(x) # x만큼 앞으로 이동합니다.(실행을 반복하면서 선이 길어짐)
t.lt(angle) # 거북이가 왼쪽으로 89도 회전합니다.
아래는 처음에 angle = 90 으로 입력혔더니 그려진 도형
마지막으로 연습겸,, 그리고자 하는 그림을 종이에 먼저 그려보고
끄적끄적 소스를 적어보고 거북이 그래픽을 이용해 그려보았다.
재밌네 ㅎㅎ
입력한 값으로 그림이 그려지는 모습을 영상으로 찍어보았다.
모두의 파이썬 책 1/3 가량 독학한 지금의 느낌은..
다행히도 아직까지는 책을 보며 소스를 입력해보고 출력되는 값을 보는 것이 무척이나 신기하고 재미있다.
그런데 이런 소스를 무작정 따라한다고 해서 앱을 만들 수 있는 것은 아닐텐데,,
A-Z까지 세세한 모든 부분의 앱 제작 방식이 궁금하다.
첫술에 배부를 수 없겠지만 일단 앱제작 순차나 원리부터 차근차근 다시 알아봐야겠다.
'Programing > python 입문' 카테고리의 다른 글
프로그래밍 독학 파이썬 Day 2. 연산과 변수 (0) | 2017.11.10 |
---|---|
프로그래밍 독학 파이썬 Day 1. 파이썬 설치 및 실행 + 간단한 프로그램 만들기 (0) | 2017.11.10 |