KT 에이블스쿨 3일차(1)

박기범·2023년 2월 2일
0

에이블스쿨

목록 보기
5/95

파이썬 기초를 배운 오늘


파이썬 입출력


파이썬은 input()를 사용하면 사용자에게 직접 입력을 받아 처리할 수 있습니다.

	n = input("입력하고 싶은거 입력하세요 ~ : ")

출력은 print()를 사용하면 출력이 가능합니다.

	print(n)

을 하게 되면 위에 입력한 값이 n에 대입되었다가 print함수를 통해 출력됩니다.
파이썬의 print()는 자동 줄바꿈(개행)이 포함되어 있지만 괄호안에 ,end=""를 해주게 되면
자동 줄바꿈이 일어나지 않고 한줄로 이어서 출력이 가능합니다.


파이썬 형변환


입력은 일반적으로 input으로 입력을 받게 되면 문자열 데이터타입으로 들어오게 됩니다.
그래서 해당 입력받은 문자를 정수형이나 다른 데이터타입으로 사용하기 위해서는 형변환이 필요합니다.
만약 사용자에게 정수를 입력 받고 이를 가지고 제곱수를 출력하고 싶을 경우에는 아래와 같이 작성합니다.

  a = int(input('숫자하나 입력 : '))
  print(f'입력한 숫자의 제곱을 하게 되면 {a**2} 입니다.')

위에 print함수내에 f를 사용해준 이유는 f-string 포매팅을 이용해준 것입니다.

	print(f'출력할 문자 {변수명}')

형태로 사용해줍니다. 깔끔하게 출력하기 위해 사용하는 방식입니다.

다시 형변환으로 돌아와서 어떤 데이터형태로 사용할 것인지에 따라 앞에 바꾸고 싶은 데이터형태를 명시해줍니다. (ex. 데이터형태(원래 데이터)) 이처럼 형변환을 사용해주면 원하는 데이터로 변환이 되어 사용가능합니다.



파이썬 함수 만들기


파이썬에서 함수 만드는 방법은 아래와 같습니다.

	def 함수명(매개변수):
    	함수 내부 코드 작성
        return 반환값

위와 같은 방식으로 함수 선언이 가능합니다.



파이썬 조건문과 분기


분기는 실행 흐름을 다른곳으로 변경하는 명령을 의미하고 조건문을 충족하는 여부에 따라 프로그램이 분기하게 된다고 말합니다.

파이썬에 조건문if, elif, else가 있습니다. 사용방식은 아래와 같습니다.

	if 조건문:
    	조건문을 만족한다면 여기 실행코드 동작
    elif 조건문:
    	위에 조건문을 만족하지 않고 elif의 조건문을 만족한다면 여기 실행코드 동작
    else:
    	위 조건들을 모두 만족하지 않는 경우 여기 실행코드 동작

else에는 따로 조건문을 사용하지 않습니다.



파이썬의 반복문


파이썬도 다른 언어들과 마찬가지로 for, while문을 사용하여 반복문을 만들 수 있습니다.

while문은 아래와 같은 방식으로 선언 가능합니다.

	while 조건문:
    	반복할 코드(실행코드) 작성

while문은 옆에 적어준 조건문이 true면 계속해서 while문 내부 실행코드를 반복해서 실행합니다. 조건문이 false가 되면 그때 반복을 멈추게 됩니다. 다만 내부 코드에서 특정 조건을 만족시켜 break문을 통해 빠져나올 수도 있고 조건문에 true를 사용해주면 무한루프에 빠져 계속해서 멈추지 않고 실행합니다.

for문은 아래와 같이 선언할 수 있습니다.

	for i in range(1, 10):
    	반복할 코드(실행코드) 작성

파이썬의 for문 사용 형태는 다양하다고 개인적으로 생각합니다. 하지만 일반적인 틀은 위와 같은 형태로 자바나 C와는 조금 다른 형태임을 확인할 수 있었습니다.

위에 문법을 자세히 살펴보자면 for 뒤에 있는 i는 변수이면 뒤에 범위로 설정해주 1~9까지의 숫자가 순서대로 대입된다고 보면 됩니다. 그래서 총 8번을 반복하는 반복문이 됩니다.
range는 리스트를 만들어줍니다. 즉, [1,2,3,4,5,6,7,8,9] 라는 리스트가 생성되는 것이고 해당 리스트의 요소들이 하나씩 i에 대입된다고 보면 됩니다.

근데 여기서 의문점이 생길 수 있습니다. 왜 범위를 1~10으로 해줬는데 9까지 밖에 안들어가지라는 의문이 생길 수 있는데 파이썬 자체 범위를 마지막 범위 숫자 -1 까지의 범위로 설정하고 있기 때문에 9까지 대입됩니다. 만약 10까지 대입을 해주고 싶으면 1~11로 범위 설정을 해주면 됩니다.



앞서 살짝 말했던 break문과 함께 continue문도 함께 정리해보겠습니다.

break는 만약 반복문 내에서 사용되었다면 가장 이웃한 반복문을 빠져나오는 기능을 가지고 있습니다. 거의 조건문과 함께 사용되며 특정 조건을 만족하면 반복문을 빠져나오도록 설계합니다.
가장 이웃한 반복문이라 말해 무슨 소리인가 싶을 수도 있는데 만약 이중 반복문이라고 했을 경우 break가 사용된다고 모든 반복문을 빠져나오는(탈출) 것이 아니라 해당 break가 사용된 반복문만 탈출한다고 생각하면 됩니다.

	while True:
    n = int(input('n값을 입력하세요.: '))
    print(f'입력한 정수의 값은 : {n}입니다.')
    if n > 0:
        break # n이 0보다 커질때 까지 반복
    #입력한 정수의 값은 : -5입니다.
	#입력한 정수의 값은 : -20입니다.
	#입력한 정수의 값은 : -50입니다.
	#입력한 정수의 값은 : 5입니다.

위 코드는 while True: 를 사용한 무한루프 즉, 계속해서 반복되는 반복문입니다. 실행코드로는 사용자에게 입력을 받은 값은 n에 저장해주는데 만약 n이 0보다 크다면 break가 실행되면서 반복문을 빠져나오게 됩니다. 만약 양수가 아닌 음수의 값을 계속해서 입력한다면 break가 실행이 되지 않아 계속해서 입력을 받게 됩니다.

continue문은 조건문과 같이 쓰면서 해당 조건을 만족하는 경우 continue를 사용하여 아래의 다른 실행구문을 실행하지 않고 다시 반복문 최상단으로 이동하여 실행코드를 계속해서 반복하는 특징을 가지고 있습니다.

	for i in range(11):
    if i == 8:
        continue
    print(i,end=" ")
    # 결과는 0 1 2 3 4 5 6 7 9 10 

위 코드는 10번 반복문이 반복하면서 0부터 10까지 찍어내는 코드입니다. 하지만 만약 i가 8일 경우 continue가 실행되면서 아래 print()실행코드가 실행되지 않음으로 8이 제외된 0부터 10까지 찍힌 결과 값을 만날 수 있습니다.







3일차는 파이썬의 기초를 배웠습니다. 파이썬과 제공해주신 문제를 풀면서 저렇게도 풀 수 있구나~ 하면서 알아가는 시간이 되었습니다.




※공부하고 있어 다소 틀린점이 있을 수 있습니다. 언제든지 말해주시면 수정하도록 하겠습니다.
※용어에 대해 조금 공부 더 해서 수정하겠습니다.

profile
개발자가 되기 위한 한걸음

0개의 댓글