[WEEK01] 기초 문법

김상호·2022년 4월 14일
1

Development Log

목록 보기
1/45

기초 문법

입출력

파이썬에서는 기본적으로 input()함수를 이용해서 사용자의 입력을 받는다. input은 입력되는 모든 것을 "문자열"로 취급한다. 변수에 값을 입력받을 때에는 a = input()와 같은 형태로 이용한다. 입력의 개수가 많은 경우, 효율적인 입력처리를 위해 sys.stdin.readline() 함수를 사용하는 경우도 있다.

import sys
a = sys.stdin.readline() # 사용자가 입력한 값을 a에 저장한다.

a = input()

출력을 할 때는 print()를 이용한다. print()는 변수나 상수를 매개변수로 입력받아 표준 출력으로 출력한다. 각 변수는 콤마(,)로 구분하여 매개변수로 넣을 수 있으며, 띄어쓰기로 구분되어 출력된다.

print(a)  # 괄호안에 변수를 받아 출력된다.

조건문

조건문은 주어진 조건이 참이나 거짓이냐를 판별하고 판별에 따라 특정 명령을 수행하는 수행문이다. 파이썬에서 if문은 "만약에"에 대한 처리를 하기 위해 사용한다.

if문의 구조

if 조건문:
	수행할 문장A
elif 조건문:
	수행할 문장B
else:
	수행할 문장C

반복문

반복문은 연산 혹은 어떠한 기능을 반복적으로 실행하기 위해 사용하는 구문이다. 대표적으로 while문과 for문이 있다. for문의 경우 반복되는 부분이나 범위를 코드 작성자가 구체적으로 지정하는 반면, while문의 경우 참과 거짓을 기준으로 조건이 거짓이 되기 전까지 무한 반복을 실행한다. 특히 while문의 경우 break문, continue문을 사용하여 무한루프가 발생하지 않도록 주의해야 한다.

for문의 구조

for 변수 in 리스트(또는 튜플, 문자열):
	수행할 문장A
    수행할 문장B
    ...

for문의 핵심은 순회할 수 있는 자료(문자열, 리스트, 딕셔너리, range()함수 등)를 사용한다는 것이다. 정수형/실수형의 경우 순회할 수 없다. 단 문자열의 경우 문자 순서에 따라 index 번호가 부여 가능하므로 순회 가능하다.

while문의 구조

while 조건문:
	수행할 문장A
    수행할 문장B
    ...

배열

배열은 인덱스가 있는 데이터 구조이고 각 인덱스에 데이터를 나열한 것이다. 파이썬에서는 리스트 타입이 배열 기능을 하고 있다. 배열을 사용하는 이유는 같은 종류의 데이터를 따로 따로 저장하는 것이 아니라 하나의 변수에 한꺼번에 저장하여 효율적으로 관리하기 위해서이다. 또 각 데이터의 접근이 쉽고 빨라진다.

파이썬에서 리스트, 딕셔너리, 튜플의 차이점

  • 리스트( [] 사용) : 특정 데이터들의 배열, 데이터들의 값을 추가하거나 삭제할 수 있다.
  • 튜플( () 사용) : 특정 데이터들의 배열이지만 데이터들을 추가하거나 삭제할 수 없다.
  • 딕셔너리( {} 사용 ) : 리스트와 튜플이 어떤 값을 담기만 했다면 딕셔너리는 키(Key)와 값을 가지는 데이터구조
    로서 키와 값이 연결되어있다. 또한 리스트와 튜플은 순서가 있고 인덱스값으로 데이터값에 접근할 수 있지만
    딕셔너리는 순서가 없고 키를 통해서 해당 키의 데이터값에 접근할 수 있다.

문자열

문자열(String)이란 문자, 단어 등으로 구성된 문자들의 집합을 의미한다. 예를 들어 다음과 같은 것들이 문자열이다.

"Life is too short, You need Python"
"a"
"123"

위 문자열 예문을 보면 모두 큰따옴표(" ")로 둘러싸여 있다. "123은 숫자인데 왜 문자열이지?"라는 의문이 들 수 있다. 따옴표로 둘러싸여 있으면 모두 문자열이라고 보면 된다.

함수

우리는 학생 시절 수학시간에 함수라는 개념을 배웠다. y = f(x) 의 형태를 가진 것을 함수라고 부른다. "어떤 x의 값을 f라는 함수에 넣었더니 y라는 값이 나온다." 이 함수의 개념은 파이썬의 함수의 개념과 동일하다. "어떤 매개변수 x를 함수 f에 넣었더니 y라는 반환값이 나온다." 즉, 함수는 어떤 값을 받으면 그에 따라 특정 기능을 수행하기 위한 일종의 명령어 집합과 같다.

함수의 기본 구조

def 함수이름(매개 변수)
	실행할 문장A
    return 반환값

기초 문법 관련 백준 문제 Github 링크
백준 기초문법 관련 문제

0개의 댓글