Python 01 자료형①

김민호·2021년 8월 21일
0

Python

목록 보기
1/16
post-thumbnail

시작

파이썬으로 할 수 있는 일

  • 시스템 유틸리티 제작
  • GUI 프로그래밍 : Graphic User Interface.
  • C/C++ 와의 결합
  • 웹 프로그래밍 : 게시판, 방명록
  • 수치 연산 프로그래밍 : NumPy 수치 연산 모듈 제공
  • 데이터베이스 프로그래밍 사이베이스, 인포믹스, 오라클, 마이에스큐엘, 포스트그레스큐엘 등의 데이터베이스에 접근하기 위한 도구를 제공
  • 데이터 분석, 사물 인터넷

파이썬 위계 구조

  • 모듈(module) : 스크립트가 저장되어 있는 한 페이지로 되어 있는 문서 파일
    모듈의 확장자는 .py
  • 패키지(package) : 같은 목적의 모듈을 하나의 폴더에 모아 저장해 둔 것
  • 라이브러리(library) : 같은 목적의 패키지를 하나로 모아준 것
    표준 라이브러리(standard library)

기본

  • 스크립트(script) : 문서의 형태로 작성한 코드
  • >>> : 프로토콜(protocol)
  • 출력 : print() 함수 ( cf. JS : console.log() )
  • 주석은 #
  • 자료형 확인은 print(type(a))
print(type(3))
 
# <class 'int'>

여기서 class! 파이썬 2.2버전부터 자료형과 클래스를 같은 계보로 병합했다고 함.
즉, 파이썬에서는 클래스(class) = 자료형(type)
Javascript에서의 class처럼 거대한 개념은 아님!

  • str( ) 함수 : 정수나 실수를 문자열의 형태로 바꾸어주는 내장 함수
  • 파이썬에서 객체란 사용되는 모든 자료형

데이터

변수

  • 변수(variable) : 대부분의 프로그래밍 언어는 스크립트상의 값을 저장할 수 있는 공간을 제공하는데, 이 공간이 변수
  • 변수명 = 값 : 변수 선언. JS에서 같이 let, var, const를 안 붙이는게 편하네
  • 변수 생성(선언, declaration)
  • 값 저장(할당, assignment)
  • 변수 호출(call)
  • 값 꺼내기(참조, reference)
  • 변수명 = 값 에서 = 는 같음을 의미하는 것이 아니라 우변을 좌변에 저장한다
  • 변수의 값은 바뀔 수 있음
  • 변수 이름 규칙
    • 변수 이름은 영어 알파벳, 숫자, underscore(_)로만 구성
    • 변수 이름 첫글자는 알파벳이나 underscore(_)로만 시작
    • 숫자 시작 불가능
    • 알파벳 대소문자 구별

객체

  • 객체(object) : 파이썬을 구성하는 모든 요소
  • 모든 자료형, 변수도 객체, print() 함수도 객체
  • 객체명 : 알파벳 대소문자, 숫자, _ 만으로 구성 (숫자로 시작할 수 없음)
  • 키워드(keyword) : 예약어. 파이썬이 선점하고 있는 객체명은 사용할 수 없음.
import keyword
print(keyword.kwlist)

['False', 'None', 'True', '__peg_parser__', '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']

자료형

1. 숫자형

정수와 실수

  • 정수형(Integer) : 소수점이 없는 숫자, 자료형명 = int
  • 실수형(Floating-point) : 소수점이 있는 수자, 자료형명 = float
  • 소수점의 유무로 정수, 실수를 구분하기 때문에 같은 값이라도 소수점의 유무에 따라 자료형이 달라질 수 있음
  • 문자열과 숫자형은 연산 불가능!
age = "30"
next_year = age + 1 
# 오류남

산술 연산자

  • arithmetic operator
  • A // B : A를 B로 나눈 몫
    7 // 2 = 3.5
    7 // 2 = 3
  • A % B : A를 B로 나눈 나머지
  • A ** B : A의 B제곱

제자리 연산

  • in-place operator = assignment operator(연산과 할당을 동시에 수행함)
  • A += B : A = A + B
  • A -= B : A = A - B
  • A *= B : A = A * B

문자열로서의 숫자

  • 숫자 자료형과 문자열 자료형은 서로 더할 수 없기 때문에
    사칙연산이 필요없는 숫자라면 처음부터 문자열로 생성하는 것이 좋음!
  • ex) 주민번호, 우편번호, 사번, 0으로 시작하는 경우

/ 연산자

파이썬3에서는 자동으로 결과값에 대해 형 변환을 함

print(66 / 2)
print(type(33))
print(type(33.0))

33.0
<class 'int'>
<class 'float'> 

수학 연산 표현 순서

  1. ( )
  2. **
  3. *, /, %
  4. +, -
    괄호를 적절히 사용해서 오류를 방지하고 가독성을 높이자!

2. 문자열 자료형

문자열 만들기

  • 문자열 자료형(string) : 텍스트의 기본 자료형, 자료형명 = str
  • 변수에 선언할 때 무조건 큰 따옴표나 작은 따옴표로 감싸줘야 함
  • "Hello World"
  • 'Hello World'
  • """Hello World"""
  • '''Hello World'''

이스케이프 코드(escape code)

  • \' : '
  • \" : "
  • \\ : \
  • \n : 줄바꿈. enter
  • \t : 줄맞춤. tab

문자열 연산

  • 문자열 더하기
a = "Have a "
b = "nice day"
print(a+b)

# Have a nice day
  • 문자열 곱하기
b = "nice day "
print(b * 5)

# nice day nice day nice day nice day nice day 

상당히 직관적이어서 가슴이 웅장해진다...

> 문자열 관련 함수 따로 정리 ✍🏼

string concatenation

+ 방법 이외의 방법
literal string interpolation

  • 따옴표 앞에 f를 붙여야 함
  • 치환하고 싶은 변수를 { }를 사용해서 표시 (함수 호출도 가능)
name = input()

print(f"Hello, {name}")
  • 문자열 text가 길 경우
print(f""" ~ """)

3. 부울

  • 부울(Bool) : 사용자가 파이썬에게 요청한 판단의 결과를 담은 자료형
  • True , False 두 개. 자료형명 = bool

비교 연산자

  • A < B
  • A > B
  • A <= B
  • A >= B
  • A == B
  • A != B

① ~ ④는 숫자형에만 적용 가능

논리 연산자

  • A and B
  • A or B
  • not A
  • 논리곱 관계 : 부분 조건식 모두 True일 때만 전체 조건식이 True가 되는 경우, 부분 조건식이 서로 간의 논리곱 관계에 있다고 표현
  • 논리합 관계 : 부분 조건식 중 어느 하나만 True여도 전체가 True가 되는 경우
  • 논리 연산자는 비교 연산자 보다 연산 우선순위가 낮음
  • 사칙연산자, 비교연산자 = 기호
    논리연산자 = 단어

자료형의 참과 거짓

  • 1 : 참
  • 0 : 거짓
  • None : 거짓
  • "python" : 참
  • "" : 거짓
  • [], (), {} : 값이 있으면 참, 없으면 거짓

Whitespace

  • 들여쓰기(indention)
  • 다른 언어와 달리 파이썬에서 들여쓰기 지키지 않으면 오류남
profile
개발자로서의 삶은 https://velog.io/@maxminos 에서 기록하고 있습니다 😀

0개의 댓글