300x250

※ 참고 서적 : Do it! 점프 투 파이썬 - 전면 개정판

 

목차

     

    1. 숫자형

     

    숫자형인 자료형은 아래와 같다. 이는 기본적인 프로그래밍 언어에서의 자료형이다.

     

     

    1) 정수형 (Inteager)

    ex) a = 123

     

    2) 실수형 (Floating-point)

    • 파이썬에서는 변수에 소수점을 붙인 수를 대입하면 실수형 변수로 처리된다.
    • 소수부가 0이거나 정수부가 0인 소수는 0을 생략할 수 있다.

     

    • 지수는 아래와 같이 표현한다.

     

    유효숫자e지수 = 유효숫자 * 10^(지수)

     

    • 지수 표현 방식은 임의의 큰 수를 표현하기 위해 자주 사용된다.
    • 최단 경로 알고리즘에서는 도달할 수 없는 노드에 대해 최단 거리를 무한(INF)으로 설정한다.
      • 이 때 가능한 최댓값이 10억 미만이라면 무한(INF)의 값으로 1e9를 사용할 수 있다.
    • 기본적으로 실수이므로, 정수형이라면 int()등을 통해 int로 바꾸어 주는 것이 좋다.

     

    다음 예시를 살펴보자.

    ex) a = 1.2 / a = 4.24E10 (4.24 * 10^10) / a = 4.24e-10 (4.24 * 10^-10)

    ex) 8진수 : a = 0o177

    ex) 16진수 : a = 0x8ff

     

    • 실수형을 저장하기 위해서는 4바이트, 혹은 8바이트의 고정된 크기의 메모리를 할당하므로, 컴퓨터 시스템은 실수 정보를 표현하는 정확도에 한계를 갖는다.
      • ex) 10진수 체계에서는 0.3과 0.6을 더한 값이 0.9로 정확히 떨어지지만, 2진수에서는 0.9를 정확히 표현할 수 없다.
      • → 최대한 가깝게 표현하려고 하지만, 어쩔 수 없이 오차가 발생할 수 있음
    • round()함수를 통해 소수점 몇째 자리까지 표현할 것인지 나타낼 수 있다.
      • ex) round(123.4567, 2) → 123.46

     

     

    3) 숫자형을 활용하기 위한 연산자

    (1) 사칙연산 ( + - * /)

    • 파이썬의 경우 나누기 연산자가 결과를 실수형으로 반환함에 유의하자!

    (2) x의 y제곱 (**) : x ** y

    (3) 나눗셈 후 나머지를 반환 (%), 몫을 반환 (//)

     

     

    2. 문자열 자료형

    2-1. 문자열의 생성과 사용

    1) 큰따옴표(")로 양쪽 둘러싸기

    ex) "Hello World"

    2) 작은 따옴표(')로 양쪽 둘러싸기

    ex) 'Python is fun'

    3) 큰따옴표 3개를 연속(""")으로 써서 양쪽 둘러싸기

    ex) """Life is too short, You need python"""

    4) 작은 따옴표 3개를 연속(''')으로 써서 양쪽 둘러싸기

    ex) '''Life is too short, You need python'''

    5) 문자열 안에 작은따옴표나 큰따옴표를 포함시키고 싶을 때

    (1) 문자열에 작은따옴표 (') 포함시키기 : 전체 문자열을 큰따옴표로 둘러싸야 한다.

    ex) "Python's favorite food is perl"

    (2) 문자열에 큰따옴표(") 포함시키기 : 전체 문자열을 작은따옴표로 둘러싸야 한다.

    ex) '"Python is very easy." he says.'

    (3) 백슬래시(\)를 사용하여 작은따옴표(')와 큰따옴표(")를 문자열에 포함시킨다.

    ex) 'Python\'s favorite food is perl'

    ex) "\"Python is very easy.\" he says."

    6) 여러 줄인 문자열을 변수에 대입하고 싶을 때

    (1) 줄을 바꾸는 이스케이프 코드 '\n' 삽입하기

    ex) "Life is too short\nYou need python"

    (2) 연속된 작은따옴표 3개(''') 또는 큰따옴표 3개(""") 사용

    ex) '''

    Life is too short

    You need python

    '''

     

    ex) """

    Life is too short

    You need python

    """

     

    ※ 이스케이프 코드란, 프로그래밍 할 때 사용할 수 있도록 미리 정의해둔 문자 조합으로, 아래와 같다.

     

     

     

    2-2. 문자열 연산

    1) 문자열 더해서 연결하기 (Concatenation)

    ex) "Python" + " is fun!" = 'Python is fun!'

    2) 문자열 곱하기

    ex) >>> a = "Python"

    >>> a * 2

    'PythonPython'

    3) 문자열 길이 구하기

    ex) >>> a = "Life is too short"

    >>> len(a)

    17

     

    2-3. 문자열 인덱싱과 슬라이싱

    • 인덱싱(Indexing) : 무언가를 가리키는 것을 말한다.
    • 슬라이싱(slicing) : 무언가를 잘라내는 것을 말한다.

    1) 문자열 인덱싱이란?

    ex) a = "Life is too short, You need Python"

    →  a[0] : 'L'    a[1] : 'i'    a[2] : 'f'     a[3] : 'e'     a[4]: ' '    ...

     

    • 인덱스의 '-' : 뒤에서부터 센다.

    ex) a[-1] : 'n'

     

    주의 : -0은 0과 같기 때문에 a[-0] = a[0]

     

    2) 문자열 슬라이싱이란?

    ex) 위 예시에서 

    a[0:4] → 'Life'

     

    즉, 자리 번호 0부터 4까지 문자를 뽑아낸다. (단, 끝 번호는 포함하지 않는다.)

     

    a[5:7] → 'is'

     

    • 끝 번호를 생략할 시 시작번호부터 문자열의 끝까지 뽑아낸다.

    ex) a[19:] → 'You need Python'

     

    • 시작 번호를 생략할 시 문자열의 처음부터 끝 번호까지 뽑아낸다.

    ex) a[:17] → 'Life is too short'

     

    • 시작번호와 끝 번호를 생략할 시 문자열의 처음부터 끝까지 뽑아낸다.

    ex) a[:] → 'Life is too short, You need Python'

     

    • '-' 사용

    ex) a[19:-7] → 'You need'

     

     

     

     

    2-4. 문자열 포매팅 (Formatting)

    • 문자열 내의 특정한 값을 바꿔야 할 경우에 사용한다. (문자열 내에 특정 값 삽입)

    1) 문자열 포매팅 따라하기

    (1) 숫자 바로 대입 : 숫자를 넣고 싶은 자리에 '%d'를 입력하고, 삽입할 숫자는 가장 뒤의 '%'다음에 위치시킨다.

        - %d : 문자열 포맷 코드

     

    ex) "I eat %d apples." % 3

    → 'I eat 3 apples.'

     

    (2) 문자열 바로 대입 : 문자열을 넣고 싶은 자리에 '%s'를 입력하고, 삽입할 문자는 가장 뒤의 '%' 다음에 위치시킨다.

    ex) "I eat %s apples." % "five"

    → 'I eat five apples.'

     

    (3) 2개 이상의 값 넣기 : 마지막 '%' 다음 괄호 안에 콤마로 구분하여 각각의 값을 넣는다.

    ex) >>> number = 10

    >>> day = "three"

    >>> "I ate %d apples. so I was sick for %s days." % (number, day)

    → 'I ate 10 apples. so I was sick for three days.'

     

    문자열 포맷 코드는 다음과 같다.

     

     

    여기서, '%s'를 사용할 때에는 정수, 부동소수점 등을 고려하지 않아도 된다. 알아서 % 뒤에 있는 값을 문자열로 바꾸어 출력하기 때문이다.

     

     

    2) 포맷 코드와 숫자 함께 사용하기

    (1) 정렬과 공백

    ex) %10s : 전체 길이가 10개인 문자열 공간에서 대입되는 값을 오른쪽으로 정렬하고 나머지는 공백으로 둔다.

    ex) %-10s : 왼쪽 정렬

    (2) 소수점 표현 : '.'는 소수점 포인트, 뒤의 숫자는 소수점 숫자 개수, 앞의 숫자는 전체 길이(오른쪽 정렬)

    ex) %10.4f

     

    이외에 format 함수를 사용하는 방법도 있다.

     

     

    2-5. 문자열 관련 함수

    1) 문자 개수 세기 : count()

    ex) a 문자열에서 b의 개수 세기

     

    2) 위치 알려주기 : find(), index()

    ex) find()

    찾는 문자나 문자열이 존재하지 않으면 -1을 반환한다.

     

    ex) index()

    찾는 문자나 문자열이 존재하지 않으면 오류가 발생한다.

     

    3) 문자열 삽입 : join()

    ex) abcd 문자열 각각의 문자 사이에 ','를 삽입한다.

     

    이외에도 관련 함수가 많다. ex) upper, lower, lstrip, rstrip, strip, replace, split, ...

     

     

     

    728x90
    • 네이버 블러그 공유하기
    • 네이버 밴드에 공유하기
    • 페이스북 공유하기
    • 카카오스토리 공유하기