안녕하세요
이번엔 반복문과 배열에 관해 강의를 해보도록 하겠습니다.
먼저 배열에 관해서 시작하겠습니다.
배열
배열은 같은 자료형끼리 줄줄히 열을 맞추어 존재하는 것을 말합니다.
코드로 직접 확인해보겠습니다.
list = [10,20,30]
print(list)
#(10, 20, 30)이 출력된다.

그러면 배열을 왜 쓰느냐.
그것은 여러 데이터가 존재할 때 이를 묶어서 관리 할 수 있기 때문입니다.
여기서 배열에 있는 값들을 어떻게 가져오는 지도 확인해보겠습니다.
문법적으로는
배열이름[인덱스]
라는 식으로 가져올 수 있습니다.
이또한 코드로 직접 확인해보겠습니다.

여기서 중요한 점은 인덱스는 0부터 시작한다는 것입니다.
그림으로 좀 더 쉽게 알려드리겠습니다.

그림으로 보면 이렇게 표현이 가능합니다.
배열의 장점은 이것이 끝이 아닙니다.
배열에는 여러 좋은 메서드들이 존재합니다.
메서드가 무엇이냐 이것은 다음에 메서드와 함수, 클래스 부분에서 깊게 다루도록 하고
간단하게 말하자면 기능적인 모듈이라고 보시면 되겠습니다.
첫째. 정렬 메서드 sort()

list_1 = [20,30,10]
#위를 출력할 경우 20,30,10이라는 순서로 출력된다.
list_1.sort()
print(list_1)
#위를 출력할 경우 10,20,30 으로 정렬된 상태로 출력된다.
둘째. 뒤집기 메서드 reverse()

list_1 = [20,30,10]
#위를 출력할 경우 20,30,10이라는 순서로 출력된다.
list_1.sort()
print(list_1)
#위를 출력할 경우 10,20,30 으로 정렬된 상태로 출력된다.
list_1.reverse()
print(list_1)
#위를 출력할 경우 내림차순 정렬로 30,20,10이 출력된다.
배열은 이정도만 알고 다음으로 반복문에 들어가보도록 하겠습니다.
반복문
반복문에는 두가지 문법이 있습니다.
while문, for문.
처음으로 while문부터 보도록 하겠습니다.
while문
문법은 다음과 같습니다.
while 조건:
(단락) 코드
이렇게 보면 어떻게 이용될 지 감이 안 잡힐 수도 있습니다.
그렇기에 코드로 직접 한번 봐봅시다.
a = 0
while a < 10:
print(a)
a += 1

프로그램을 돌렸을 때 다음과 같은 결과가 나옵니다.
왜 그렇게 나오는 지는 그림으로 설명해드리겠습니다.

조금은 이해가 되시나요?
즉, while문은 특정한 조건에 맞추어 조건이 만족하면 반복, 만족하지 않으면 반복해제를 해버립니다.
그럼 For문은 어떤 차이가 있을 지 한번 봐보죠
For문
문법
for 변수 in (배열, range()메서드):
(단락) 코드
이 또한 직접 코드를 봐보면서 이해해봅시다.
a = [10,20,30,40]
for i in a:
print(i)
# 10,20,30,40이 차례대로 출력된다.
for i in range(0,10):
print(i)
# 0부터 9까지의 숫자가 출력된다.

for문은 배열이나 range() 메서드와 함께 쓰인다,
for문의 쓰임은 특정 반복 횟수를 반복할 때나 배열의 값을 꺼내 쓸 때 주로 쓰인다.
여기서 포인트는 range() 메서드의 0,10 값에서 10은 포함되지 않는다는 것이다.
응용 프로그램
이번에는 저번 강의인 조건문과 연결지어 응용프로그램을 만들어 보고자 합니다.
혹시 조건문 강의를 보고 오지 못한 분들은 [파이썬 코딩 강의] 조건문 (if, switch)
이 곳에 들어가서 보고오시길 바랍니다.
그러면 이번에 만들어볼 프로그램은 사용자로부터 정수를 입력받아
그 정수가 양수이면 양수라고, 0이면 0이라고 음수면 음수라고 출력하는데
양수 일 경우 계속 사용자로부터 입력받고 -1을 입력할 시 반복문을 빠져나가는 프로그램이다.
먼저 사용자로부터 입력받고 양수, 0, 음수를 출력하는 코드부터 만들어 보자
userInput = int(input("input the value : "))
if userInput > 0:
print("양수입니다.")
elif userInput == 0:
print("0입니다.")
else:
print("음수입니다.")
위와 같은 코드가 될 것이다.
그럼 여기서 반복문을 추가해보자.
userInput = 0 #초기값을 잡지 않으면 반복문에서 userInput != -1을 읽을 수 없다.
while userInput != -1:
userInput = int(input("input the value : "))
if userInput > 0:
print("양수입니다.")
elif userInput == 0:
print("0입니다.")
else:
print("음수입니다.")

그러면 우리가 원하는 프로그램이 만들어 짐을 알 수 있습니다!
이번 강의는 이것으로 마치고
다음 강의는 좀 더 알차는 강의로 돌아오겠습니다.
그럼 다들 좋은 코더가 되길 바라겠습니다!
'프로그래밍 > Python' 카테고리의 다른 글
[파이썬 코딩 강의] 파일 읽고 쓰기 (3) | 2021.02.28 |
---|---|
[파이썬 코딩 강의] 배열과 해시 (자료형 심화) (0) | 2020.11.11 |
[파이썬 코딩 강의] 조건문 (if) (0) | 2020.11.10 |
[파이썬 코딩 강의] 변수, 자료형 (0) | 2020.11.10 |
[파이썬 코딩 강의] 입출력 (input, print) (0) | 2020.11.10 |
안녕하세요
이번엔 반복문과 배열에 관해 강의를 해보도록 하겠습니다.
먼저 배열에 관해서 시작하겠습니다.
배열
배열은 같은 자료형끼리 줄줄히 열을 맞추어 존재하는 것을 말합니다.
코드로 직접 확인해보겠습니다.
list = [10,20,30]
print(list)
#(10, 20, 30)이 출력된다.

그러면 배열을 왜 쓰느냐.
그것은 여러 데이터가 존재할 때 이를 묶어서 관리 할 수 있기 때문입니다.
여기서 배열에 있는 값들을 어떻게 가져오는 지도 확인해보겠습니다.
문법적으로는
배열이름[인덱스]
라는 식으로 가져올 수 있습니다.
이또한 코드로 직접 확인해보겠습니다.

여기서 중요한 점은 인덱스는 0부터 시작한다는 것입니다.
그림으로 좀 더 쉽게 알려드리겠습니다.

그림으로 보면 이렇게 표현이 가능합니다.
배열의 장점은 이것이 끝이 아닙니다.
배열에는 여러 좋은 메서드들이 존재합니다.
메서드가 무엇이냐 이것은 다음에 메서드와 함수, 클래스 부분에서 깊게 다루도록 하고
간단하게 말하자면 기능적인 모듈이라고 보시면 되겠습니다.
첫째. 정렬 메서드 sort()

list_1 = [20,30,10]
#위를 출력할 경우 20,30,10이라는 순서로 출력된다.
list_1.sort()
print(list_1)
#위를 출력할 경우 10,20,30 으로 정렬된 상태로 출력된다.
둘째. 뒤집기 메서드 reverse()

list_1 = [20,30,10]
#위를 출력할 경우 20,30,10이라는 순서로 출력된다.
list_1.sort()
print(list_1)
#위를 출력할 경우 10,20,30 으로 정렬된 상태로 출력된다.
list_1.reverse()
print(list_1)
#위를 출력할 경우 내림차순 정렬로 30,20,10이 출력된다.
배열은 이정도만 알고 다음으로 반복문에 들어가보도록 하겠습니다.
반복문
반복문에는 두가지 문법이 있습니다.
while문, for문.
처음으로 while문부터 보도록 하겠습니다.
while문
문법은 다음과 같습니다.
while 조건:
(단락) 코드
이렇게 보면 어떻게 이용될 지 감이 안 잡힐 수도 있습니다.
그렇기에 코드로 직접 한번 봐봅시다.
a = 0
while a < 10:
print(a)
a += 1

프로그램을 돌렸을 때 다음과 같은 결과가 나옵니다.
왜 그렇게 나오는 지는 그림으로 설명해드리겠습니다.

조금은 이해가 되시나요?
즉, while문은 특정한 조건에 맞추어 조건이 만족하면 반복, 만족하지 않으면 반복해제를 해버립니다.
그럼 For문은 어떤 차이가 있을 지 한번 봐보죠
For문
문법
for 변수 in (배열, range()메서드):
(단락) 코드
이 또한 직접 코드를 봐보면서 이해해봅시다.
a = [10,20,30,40]
for i in a:
print(i)
# 10,20,30,40이 차례대로 출력된다.
for i in range(0,10):
print(i)
# 0부터 9까지의 숫자가 출력된다.

for문은 배열이나 range() 메서드와 함께 쓰인다,
for문의 쓰임은 특정 반복 횟수를 반복할 때나 배열의 값을 꺼내 쓸 때 주로 쓰인다.
여기서 포인트는 range() 메서드의 0,10 값에서 10은 포함되지 않는다는 것이다.
응용 프로그램
이번에는 저번 강의인 조건문과 연결지어 응용프로그램을 만들어 보고자 합니다.
혹시 조건문 강의를 보고 오지 못한 분들은 [파이썬 코딩 강의] 조건문 (if, switch)
이 곳에 들어가서 보고오시길 바랍니다.
그러면 이번에 만들어볼 프로그램은 사용자로부터 정수를 입력받아
그 정수가 양수이면 양수라고, 0이면 0이라고 음수면 음수라고 출력하는데
양수 일 경우 계속 사용자로부터 입력받고 -1을 입력할 시 반복문을 빠져나가는 프로그램이다.
먼저 사용자로부터 입력받고 양수, 0, 음수를 출력하는 코드부터 만들어 보자
userInput = int(input("input the value : "))
if userInput > 0:
print("양수입니다.")
elif userInput == 0:
print("0입니다.")
else:
print("음수입니다.")
위와 같은 코드가 될 것이다.
그럼 여기서 반복문을 추가해보자.
userInput = 0 #초기값을 잡지 않으면 반복문에서 userInput != -1을 읽을 수 없다.
while userInput != -1:
userInput = int(input("input the value : "))
if userInput > 0:
print("양수입니다.")
elif userInput == 0:
print("0입니다.")
else:
print("음수입니다.")

그러면 우리가 원하는 프로그램이 만들어 짐을 알 수 있습니다!
이번 강의는 이것으로 마치고
다음 강의는 좀 더 알차는 강의로 돌아오겠습니다.
그럼 다들 좋은 코더가 되길 바라겠습니다!
'프로그래밍 > Python' 카테고리의 다른 글
[파이썬 코딩 강의] 파일 읽고 쓰기 (3) | 2021.02.28 |
---|---|
[파이썬 코딩 강의] 배열과 해시 (자료형 심화) (0) | 2020.11.11 |
[파이썬 코딩 강의] 조건문 (if) (0) | 2020.11.10 |
[파이썬 코딩 강의] 변수, 자료형 (0) | 2020.11.10 |
[파이썬 코딩 강의] 입출력 (input, print) (0) | 2020.11.10 |