Skip to content

Latest commit

 

History

History
226 lines (152 loc) · 5.67 KB

Python.md

File metadata and controls

226 lines (152 loc) · 5.67 KB

Python

파이썬(Python) 이란?

  • Easy to learn
    • 문법이 간단하고, 쉬움
    • 경험이 없어도 짧은 시간 내에 마스터 가능
  • Expressive Language
    • 간결하게 작성 가능
  • 크로스 플랫폼 언어
    • 윈도우즈, macOS, 리눅스, 유닉스 등 다양한 운영체제에서 실행가능

파이썬의 특징

  • 인터프리터 언어(Interpreter)
    • 소스 코드를 기계어로 변환하는 컴파일 과정 없이 바로 실행 가능
    • 코드를 대화 하듯 바로 확인 가능
  • 객체 지향 프로그래밍(Object Oriented Programming)
    • 파이썬은 객체지향 언어이며, 모든 것이 객체로 구현되어 있음

객체(object) : 숫자, 문자, 클래스 등 값을 가지고 있는 것


기초문법

  • 들여쓰기
    • Space Sensitive
      • 문장을 구분할 때, 들여쓰기 사용

스페이스 4번 권장 스페이스 쓸거면 계속 스페이스, 텝 쓸거면 계속 텝

  • 변수

    • 컴퓨터 메모리 어딘가에 있는 객체를 참조하기 위해 사용되는 이름
  • 변수 할당

    • 같은 값을 동시에 할당 할 수 있음
    • 다른 값을 동시에 할당 할 수 있음
  • 식별자

    • 식별자의 이름은 영문 알파벳, 언더스코어(_), 숫자로 구성

    • 첫 글자에 숫자가 올 수 없음

    • 길이제한이 없고, 대소문자를 구별

    • 다음의 키워드는 예약어로 사용할 수 없음

      False, None, True, and, as, assert, async, await, break, class, continue, def, del, elif, else, except, finally, for, from, global, if, import, in, is, lambda, nonlocal, not, or, pass, raise, return, try, while, with, yield

    • 내장함수나 모듈 등의 이름으로도 만들면 안됨

  • 사용자 입력

    • input([prompt])
      • 사용자로부터 값을 즉시 입력 받을 수 있는 내장함수
      • 대괄호 부분에 문자열을 넣으면 입력 시, 해당 문자열을 출력할 수 있음
      • 반환 값은 항상 문자열의 형태로 반환
  • 주석

    • 코드에 대한 설명

    • 가장 중요한 습관

      #주석

파이썬의 기본 자료형

  • 자료형 분류

    • 불린형
    • 수치형
      • int
      • float
      • complex
    • 문자열
    • None
  • 불린

    • True / False 값을 가진 타입은 bool
    • 비교/논리 연산을 수행함에 있어서 활용됨
    • 다음은 모두 False로 변환
      • 0, 0.0, (), [], {}, ", None
    • bool() 함수
      • 특정 데이터가 True인지 False인지 검증
  • 정수

    • 모든 정수의 타입은 int

    • 매우 큰 수를 나타낼 때 오버플러우가 발생하지 않음

      오버플로우(overflow) : 데이터를 타입별로 사용할 수 있는 메모리의 크기를 넘어서는 상황

  • 실수

    • 정수가 아닌 모든 실수는 float 타입
    • 부동소수점
      • 실수를 컴퓨터가 표현하는 방법 = 2진수로 숫자를 표현
      • 부동소수점에서 실수 연산 과정에서 발생가능(Floating point rounding error)
        • 값 비교하는 과정에서 정수가 아닌 실수인 경우 주의할 것
  • 산술 연산자

연산자 내용
+ 덧셈
- 뺄셈
* 곱셈
/ 나눗셈
% 나머지
//
** 거듭제곱
  • 복합 연산자

    • 연산과 할당이 함께 이뤄짐
연산자 내용
a += b a = a + b
a -= b a = a - b
a *= b a = a * b
a /= b a = a / b
a //= b a = a // b
a %= b a = a % b
a **= b a = a ** b
  • 비교 연산자

연산자 내용
< 미만
<= 이하
> 초과
>= 이상
== 같음
!= 같지않음
is 객체 아이덴티티(OOP)
is not 객체 아이덴티티가 아닌 경우
  • 문자열

    • 모든 문자는 str 타입
    • 문자열은 작은 따옴표(')나 큰 따옴표(")를 활용하여 표기
    • 따옴표 안에 따옴표를 표현할 경우
      • 작은 따옴표가 양 끝에 사용되면 중간엔 큰 따옴표
      • 큰 따옴표가 양 끝에 사용되면 중간엔 작은 따옴표
    • 삼중 따옴표
    • 작은 따옴표나 큰 따옴표를 삼중으로 사용
      • 따옴표 안에 따옴표를 넣을때, 여러줄을 나눠 입력할 때 편리
  • 인덱싱

    • 인덱스를 통해 특정 값에 접근할 수 있음

      name = "abcdefg"
      print(name[1])
      #b
  • 슬라이싱

    • name[2:5]
    name = "abcdefg"
    print(name[2:5])
    #cde
    • name[2:7:2]

      name = "abcdefg"
      print(name[2:7:2])
      #ceg
    • name[6:2:-1]

      name = "abcdefg"
      print(name[6:2:-1])
      #gfed
    • name[:3] = 0~2까지

    • name[5:] = 5부터 끝까지

    • name[::] = 'abcdefg' = name[0:len(name):1]과 동일

    • name[::-1] = 'gfedcba' = name[-1:-(len(name)+1):-1]과 동일

  • 문자열 활용

    • 문자열 내에서 특정 문자나 조작을 위해서 역슬래시(\)를 활용하여 구분
예약문자 내용(의미)
\n 줄 바꿈
\t
\r 캐리지리턴
\0 널(Null)
\ \
\' 단일인용부호(')
\" 이중인용부호(")