파이썬 강좌 – 기초 입출력 ~ 소통하기

  1. 프롤로그
  2. 개발 첫걸음
    1. 컴퓨터 구성요소 – 컴퓨터는 어떤 걸 할 수 있나?
    2. 개발과 관련된 용어
    3. 파이썬의 선택 – 왜 파이썬인가?
    4. 파이썬 설치 – Hello World 출력하기
    5. Visual Studio Code 의 편리한 기능
    6. REPL과 콘솔 창 – 파이썬 동작시키기
  3. 파이썬 기초
    1. 기초 입출력 – 소통하기
    2. 변수와 대입 – 기억하기
    3. 연산자 – 계산하기
    4. 조건문 – 분기를 만들기
    5. 반복문 – 비슷한 작업을 반복하기
    6. 반복문 코딩하기
    7. 변수와 리스트 – 비슷한 변수들을 묶기
    8. for, range – 리스트의 항목을 다루기
    9. 함수와 메소드의 호출 – 편리한 기능 이용하기
    10. 모듈 설치와 사용 – 유용한 기능 끌어다 쓰기
    11. 문자열 – 텍스트 다루기
  4. 파이썬 중급
    1. 함수를 직접 만들기 – 자주 쓰는 기능을 묶기
    2. 딕셔너리, 튜플, 세트 – 변수를 다양한 방법으로 묶기
    3. 클래스와 객체 – 변수를 사람으로 진화시키기
    1. 상속 – 클래스를 확장하기
    2. 정체성과 동질성 – 객체의 성질
    3. 특별 메소드와 연산자 – 파이썬의 내부 작동방식 이해하기
    4. 다양한 함수 인수 – 유연한 함수 만들기
    5. 슬라이싱 – 리스트 간편하게 접근하기
    6. 지능형 리스트(List Comprehension) – 리스트 갖고 놀기
    7. namedtuple - 데이터 묶음 손쉽게 만들기
    8. 조건 표현식 (Conditional Expression) - 간단한 분기 나타내기
    9. 코드 스타일 - 코드의 일관성 유지하기
    10. 명령문, 표현식 – 문법을 이루는 것들
    11. 본격적인 검색 해보기
  5. 파이썬 고급
    1. 일급 함수 다루기
    2. NotImplementedError와 NotImplemented
    3. 어노테이션 – 수월하게 프로그래밍하기
    1. 내장 함수 톺아보기
    2. 예외와 에러 – 예상치 못한 상황에 대응하기 (v0.1)
    3. 변수의 범위 – 이름 검색의 범위
  6. 파이썬 심화
    1. 시퀀스와 반복자 – 반복과 순회를 자유자재로 다루기
    2. 데코레이터 – 함수의 기능을 강화하기
    3. 프로퍼티
    4. 제너레이터
    5. async와 await
    6. 객체로서의 클래스 – 클래스를 동적으로 정의하기
  7. 파이썬 프로젝트 실습
    1. 원카드 게임 만들기 (1)
    2. 원카드 게임 만들기 (2)
    3. 원카드 게임 만들기 (3) (작성중)
    4. 턴제 자동 전투 게임 만들기 (작성중)
  8. 실전 (파이썬 외적인 것들)
    1. 정규표현식 – 문자열을 검색하고 치환하기 (작성중)
    2. 유니코드 – 컴퓨터에서 문자를 표기하는 방법
    3. html, css, 인터넷 – 자동화 첫 걸음 내딛기
    4. 네트워크 – 인터넷으로 통신하는 방법
    5. 문서 – 문맥을 읽어보기

선행되어야 하는 것

  • 파이썬 설치

한 줄에 하나씩, 차례대로

모니터에 글자를 출력할 때에는 print라는 함수(function) 를 이용합니다. 다음 코드를 실행해 봅시다. 함수의 자세한 내용은 함수와 메서드의 호출 에서 나오나, 지금은 차근차근 천천히 한 발짝씩 나아가는게 중요합니다.

  • 실행 코드
print('안녕하세요?')
  • 결과
안녕하세요?

그렇다면 다음 코드를 다시 실행해보아요.

  • 실행 코드
print('안녕하세요?')
print('두번째입니다.')
  • 결과
안녕하세요?
두번째입니다.

두번째입니다.가 두번째에 출력되었습니다. 그렇다면 자리를 바꾸면 어떻게 될까요?

  • 실행 코드
print('두번째입니다.')
print('안녕하세요?')
  • 결과
두번째입니다.
안녕하세요?

예상대로 자리가 바뀐 채로 출력이 되었습니다. 두 줄에 걸쳐 쓰기가 귀찮습니다. 그냥 한 줄에 쓸래요.

  • 실행 코드
print('두번째입니다.') print('안녕하세요?')
  • 결과
  File "c:/Users/tooth/Desktop/py.py", line 1
    print('두번째입니다.') print('안녕하세요?')
                         ^
SyntaxError: invalid syntax

엥? 뭔가 이상하게 되었습니다. SyntaxError 이라고 합니다. 즉 문법 오류라고 하네요. 한 줄에 두 개의 명령을 쓰는 것은 문법 오류인가 봅니다. 그렇다면 한 줄에 하나의 명령만 사용하여야겠습니다.

기억하세요!

  • 코드는 위에서부터 아래로 차례대로 실행된다.
  • 명령은 한 줄에 하나만 작성한다.

입력받기

입력을 받을 때는 input이라는 함수를 이용합니다. 다음 코드를 실행해보세요.

  • 실행 코드
input()
  • 출력
실행하니 멈추었습니다.
키보드를 통해 문자를 입력할 수 있습니다. 엔터(Enter) 키를 누르면 진행합니다.

입력만 받고 아무런 행동도 취하지 않았으므로 프로그램은 아무것도 하지 않고 그대로 종료합니다. input의 괄호 안에 '메시지'를 넣으면 입력받기 직전에 메시지를 출력할 수 있습니다.

  • 실행 코드
input('1을 입력해주세요! >> ')
  • 출력

1을 입력해달라는 메시지를 줬다고 해서 1만 입력할 수 있는 건 아닙니다. 우리의 파이썬 프로그램은 1을 입력해주세요! 라는 문맥을 전혀 읽을 수 없습니다. 그러므로 3을 입력해도 에러가 날 일은 절대 없습니다.


표현식(expression), ~~ 문(statement), 블록(block)

(추가 예정)


예약어(keyword)

예약어란 문법으로 사용되는 단어입니다. 이미 문법적인 뜻이 정해져서 다른 용도로는 사용할 수 없기 때문에 이미 예약되었다 하여 예약어로 불립니다. 키워드라고도 합니다. 우리가 변수명으로 사용할 수 없습니다. 예약어의 종류는 다음 링크를 참조해주세요.

https://www.w3schools.com/python/python_ref_keywords.asp


주석(comments)

주석이란 소스 코드에 부가적인 설명입니다. 아무리 파이썬이 쉬운 프로그래밍 언어라고들 하지만 방대한 코드를 일일히 해석하기란 시간이 드는 일입니다. 고로 코드를 간략하게나마 설명하고 싶을 때 우리는 주석을 사용합니다. 파이썬 인터프리터는 주석을 맞닥뜨려도 아무런 일을 하지 않습니다. 절대적으로 무시합니다. 코드를 작성하는 우리 인간들의 눈에만 보일 뿐입니다.

주석은 #을 통해 작성합니다. #은 하나의 줄에서만 작동하고, # 뒤에 있는 모든 문자들을 주석으로 만듭니다.

# 이것은 주석입니다. 이 프로그램은 어쩌구저쩌구 설명을 할 수 있습니다.
# 물론 연속으로 주석이 와도 상관이 없지요.
# hello = 10 .. 물론 작동하지 않습니다.
print('hello!') # 주석은 줄의 가운데에서부터도 시작할 수 있습니다.

위 주석은 한 줄 한 줄마다 작성해야 하는 불편함이 있습니다. 하지만 여러 줄에 걸친 주석을 만들 수도 있는데요, 이는 한참 더 뒤에 배웁시다. 문자열(추가 예정)


연습 문제

  • 모니터에 글자를 출력하려면 어떻게 해야 하는가?
  • input은 어떤 역할인가?
  • 코드는 어떤 순서로 실행되는가?
  • 명령은 한 줄에 몇 개까지 사용할 수 있는가?
  • 예약어는 무엇인가?
  • 주석은 무엇이고, 어떻게 사용하는가?
  1. 프롤로그
  2. 개발 첫걸음
    1. 컴퓨터 구성요소 – 컴퓨터는 어떤 걸 할 수 있나?
    2. 개발과 관련된 용어
    3. 파이썬의 선택 – 왜 파이썬인가?
    4. 파이썬 설치 – Hello World 출력하기
    5. Visual Studio Code 의 편리한 기능
    6. REPL과 콘솔 창 – 파이썬 동작시키기
  3. 파이썬 기초
    1. 기초 입출력 – 소통하기
    2. 변수와 대입 – 기억하기
    3. 연산자 – 계산하기
    4. 조건문 – 분기를 만들기
    5. 반복문 – 비슷한 작업을 반복하기
    6. 반복문 코딩하기
    7. 변수와 리스트 – 비슷한 변수들을 묶기
    8. for, range – 리스트의 항목을 다루기
    9. 함수와 메소드의 호출 – 편리한 기능 이용하기
    10. 모듈 설치와 사용 – 유용한 기능 끌어다 쓰기
    11. 문자열 – 텍스트 다루기
  4. 파이썬 중급
    1. 함수를 직접 만들기 – 자주 쓰는 기능을 묶기
    2. 딕셔너리, 튜플, 세트 – 변수를 다양한 방법으로 묶기
    3. 클래스와 객체 – 변수를 사람으로 진화시키기
    1. 상속 – 클래스를 확장하기
    2. 정체성과 동질성 – 객체의 성질
    3. 특별 메소드와 연산자 – 파이썬의 내부 작동방식 이해하기
    4. 다양한 함수 인수 – 유연한 함수 만들기
    5. 슬라이싱 – 리스트 간편하게 접근하기
    6. 지능형 리스트(List Comprehension) – 리스트 갖고 놀기
    7. namedtuple - 데이터 묶음 손쉽게 만들기
    8. 조건 표현식 (Conditional Expression) - 간단한 분기 나타내기
    9. 코드 스타일 - 코드의 일관성 유지하기
    10. 명령문, 표현식 – 문법을 이루는 것들
    11. 본격적인 검색 해보기
  5. 파이썬 고급
    1. 일급 함수 다루기
    2. NotImplementedError와 NotImplemented
    3. 어노테이션 – 수월하게 프로그래밍하기
    1. 내장 함수 톺아보기
    2. 예외와 에러 – 예상치 못한 상황에 대응하기 (v0.1)
    3. 변수의 범위 – 이름 검색의 범위
  6. 파이썬 심화
    1. 시퀀스와 반복자 – 반복과 순회를 자유자재로 다루기
    2. 데코레이터 – 함수의 기능을 강화하기
    3. 프로퍼티
    4. 제너레이터
    5. async와 await
    6. 객체로서의 클래스 – 클래스를 동적으로 정의하기
  7. 파이썬 프로젝트 실습
    1. 원카드 게임 만들기 (1)
    2. 원카드 게임 만들기 (2)
    3. 원카드 게임 만들기 (3) (작성중)
    4. 턴제 자동 전투 게임 만들기 (작성중)
  8. 실전 (파이썬 외적인 것들)
    1. 정규표현식 – 문자열을 검색하고 치환하기 (작성중)
    2. 유니코드 – 컴퓨터에서 문자를 표기하는 방법
    3. html, css, 인터넷 – 자동화 첫 걸음 내딛기
    4. 네트워크 – 인터넷으로 통신하는 방법
    5. 문서 – 문맥을 읽어보기

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Scroll to top