ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [TIL] 20.12.14 (2) 파이썬 개념 / 특징
    Cloud/클라우드 아키택트 양성과정 2020. 12. 22. 20:47

    [20.12.14] 파이썬 개념 / 특징

    * 파이썬(Python)

    - 1990년 암스테르담의 귀도 반 로섬(Guido Van Rossum)이 개발한 인터프리터 언어

    - 공동 작업, 유지 보수가 쉬운 편

     

    * 파이썬의 특징

    1) 쉬운 문법, 빠른 습득 : 문법이 쉽고 간결하며 사람의 사고 체계와 닮아 있음

    2) 무료, 강력함: 오픈 소스로 언제 어디서든 사용이 가능, C언어와의 조합이 좋음

    3) 빠른 개발 속도

    "Life is too short, You need Python."
    - 파이썬의 빠른 개발 속도를 보여주는 문장

     

    * 파이썬 설치

    [Python] 파이썬 설치 (Windows용)

     

    * 파이썬의 기초, 자료형(Data Type)

    1) 숫자형 : 숫자 형태로 이루어진 자료형

    종류 예시
    정수 1, 100 -20
    실수 1.5, -12.4, 3.4e10
    8진수 0o24, 0o15
    16진수 0x0A, 0xFF

    1-a) 숫자형 연산

    > 사칙연산 : +(덧셈), -(뺄셈), *(곱셈), /(나눗셈)

    > 기타 연산 : //(나눈 뒤 몫), **(제곱수), %(나눈 뒤 나머지)

     

    2) 문자열 : 문자, 단어 등으로 구성된 문자들의 집합

     

    2-a) 문자열 생성

    > 큰따옴표(" "), 큰따옴표 3개(""" """), 작은따옴표(' '), 작은따옴표 3개(''' ''')

     

    2-b) 문자열 내에 따옴표 포함시키기

    > 작은따옴표(' ') : 큰따옴표로 감싸기 ex) "그가 '안녕'이라 말했다."

    > 큰따옴표(" ") : 작은따옴표로 감싸기 ex) '그가 "안녕"이라 말했다.'

    > 백 슬래시(\) 활용 : 백 슬래시 뒤에 쓰기 ex) '그가 \"안녕\"이라 말했다."

     

    2-c) 문자열 연산

    > 문자열 덧셈 : 'hello' + ' python' => 'hello python'

    > 문자열 곱셉 : '*' * 3 => '***'

    > 문자열 길이 구하기 : 파이썬 내장 함수 len 활용 ex) len('abc') => 3

     

    2-d) 문자열 인덱싱, 슬라이싱

    > 타 언어의 배열과 같은 인덱스를 문자열에서도 사용이 가능하다.

    a = 'python'
    print(a[0]) # 출력 : p
    print(a[0:4]) # 0이상 4 미만의 문자열 출력 : pyt
    print(a[0:]) # 0부터 끝까지 출력 : python
    print(a[:2]) # 0부터 4 미만의 문자열 출력 : py

    2-e) 문자열 포맷팅

    > C언어의 그것과 비슷하다. 문자열 내에 '%'를 입력하고 뒤에 값을 전달한다.

    > '%'를 활용하는 방법 외에 f 문자열 포맷팅도 있다.

    # 1. % 문자열 포맷팅
    "hello, %d python" % 3 # %d는 숫자 대입
    # -> 출력 : hello, 3 python
    "hello, $s python" % 'my' # %s는 문자열 대입
    # -> 출력 : hello, my python
    
    # 2. f 문자열 포맷팅
    name = '홍길동'
    f'내 이름은 {name} 입니다.'
    # 출력 : '내 이름은 홍길동 입니다.'

    > 문자열 포맷팅은 다양한 형태로 활용될 수 있다.

    # 문자열 포맷팅 활용
    # 1. 정렬, 공백
    "%10s" % "hi" # 문자열을 대입하되, 전체 길이 10개의 공간에 집어넣기.
    # 출력 : '        hi' -> hi가 오른쪽 정렬
    "%-10s" % "hi" # 문자열을 대입하되, 전체 길이 10개의 공간에 오른쪽부터 집어넣기.
    # 출력 : 'hi        ' -> hi가 왼쪽 정렬
    
    # 2. 소수점 표현
    "%0.4f" % 3.141592 # 실수를 대입하되, 소수점 아래 4자리 까지 출력
    # 출력 : '3.1415'
    "%10.4f" % 3.141592 # 실수를 대입하되, 전체 길이 10개의 공간에 소수점 아래 4자리 까지 출력
    # 출력 : '    3.1415'

    > % 문자열 포맷 코드

    코드 설명
    %s 문자열(string)
    %c 문자 1개(character)
    %d 정수(integer)
    %f 부동 소수(floating-point)
    %o 8진수
    %x 16진수
    %% Literal %(문자 '%' 자체)

     

    2-f) 문자열 관련 함수

    > 문자열.count('a') : 문자열 안에 'a'라는 문자 개수 반환, 없으면 0 반환

    > 문자열.find('a') : 문자열 안에 'a'라는 문자가 처음 나온 위치 반환, 없으면 -1 반환

    > 문자열.index('a') : find와 동일하나 문자열이 없으면 오류 발생

    > 문자열.join('abc') : 문자열을 'abc'에 삽입 ex)','.join('abc') => 'a,b,c'

    > 문자열.upper() : 영소문자를 대문자로 변환

    > 문자열.lower() : 영대문자를 소문자로 변환

    > 문자열.strip() : 문자열 양쪽에 연속된 공백 삭제

    > 문자열.lstrip() : 문자열 왼쪽에 연속된 공백 삭제

    > 문자열.rstrip() : 문자열 오른쪽에 연속된 공백 삭제

    > 문자열.replace('a','b') : 문자열 내에 'a'라는 모든 글자를 'b'라는 글자로 치환

    > 문자열.split(기준) : 문자열을 기준을 구분자로 해서 분리

     

    * 실습 문제

    1) 원달러 환율 = 1117.50원 일 때, 2000원을 달러로 바꾸시오.

    # 풀이
    rate = 1117.5
    print(2000/rate)

    2) 7777원을 동전으로 바꾸어서 출력하라.

    > 오백 원짜리, 백원짜리, 오십 원짜리, 십원짜리, 일 원짜리로 출력할 것.

    # 풀이
    money = 7777
    five_hund = money//500
    money %= 500
    one_hund = money//100
    money %= 100
    fifty = money//50
    money %= 50
    ten = money//10
    money %= 10
    print(f'오백원짜리 : {five_hund}개')
    print(f'백원짜리 : {one_hund}개')
    print(f'오십원짜리 : {fifty}개')
    print(f'십원짜리 : {ten}개')
    print(f'일원짜리 : {money}개')

     

     

    ※ 이 게시물은 'Do it 점프 투 파이썬' 교재와 엔코아 플레이데이터에서 배운 내용을 토대로 작성되었습니다.

    댓글

Designed by Tistory.