ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 03. 타입
    Python 2021. 1. 20. 16:13

    3.1 수치형

    • 정수형(int)
    진법 접두 사용 가능한 숫자
    16진법(hexadecimal) 0x 09, af 0x2f
    8진법(octal) 0o 0~7 0o17
    2진법(binary) 0b 0, 1 0b1101

    print 명령은 정수를 어떤 진법으로 표현하든 항상 10진수로 출력한다. 10진수 이외의 진법으로 정수를 출력하기 위해선 hex, oct, bin 함수를 사용하면 된다. 이 함수들은 10진수를 접두까지 붙여 문자열 형태로 전환한다. 변환한 결과는 문자열이므로 계산에는 사용할 수 없고 출력만 가능하다.

    - 2진수, 8진수, 16진수 문자를 10진수로 변환하는 방법은 int의 두 번째 매개변수로 값을 넣어준다.

    print(int('0b1010', 2))
    
    print(int('0o12', 8))
    
    print(int('0xa', 16))
    10 
    10 
    10

    - format의 두 번째 인수를 활용해 진수를 변환할 수도 있다.

    print(format(10, '#b'))
    
    print(format(10, '#o'))
    
    print(format(10, '#x'))
    0b1010
    
    0o12
    
    0xa

    만일 알파벳 부분을 대문자로 출력하고 싶다면, #B, #X, #O를 사용하면 된다.

    접두어를 제거하고 싶다면, #을 제거한 format을 사용한다.

    print(format(10, 'b'))
    
    print(format(10, 'o'))
    
    print(format(10, 'x'))
    1010 
    
    12 
    
    a
    • 실수형(float)

    정수에 비해 . 이하의 수가 있어 더 정밀한 값을 표현할 수 있다.

    가수e지수

    위와 같이 부동 소수점을 사용해 큰 값을 직관적으로 파악할 수 있다.

    • 복소수형

    복소수는 제곱해서 음수가 되는 가상의 숫자이다. 실제로 존재하지 않는 허수여서 실생활에서 쓸 일은 없지만 과학 분야에서 중간 과정 계산을 위해 종종 사용된다.

    실수부 + 허수부j

    2^10 = 1024 => 1000(K)

    2^11 = 2^10 * 2 = 2K

    2^10 = K

    2^20 = M

    2^30 = G

    2^24 => 2^4 * M => 26M

    3.2 문자열

    • 문자열

    어떤 문자든 포함할 수 있지만 예외적으로 문자열을 감싸는 기호인 따옴표는 따옴표 안에 적을 수 없다. 아래 문자열은 에러로 처리된다.

    "I Say "Help" to you" -> error

    큰 따옴표를 포함시키려면 작은 따음표로 문자열을 감싼다.

    'I Say "Help" to you'

    반대로 작은 따옴표가 문자열 안에 있을 때는 큰 따옴표로 감싼다.

    "Let's go"
    • 확장열 (Escape Sequence)
    확장열 설명
    \n 개행
    \t
    (슬래시)" 큰따옴표
    (슬래시)' 작은따옴표
    (슬래시)\ \ 문자

    \r -> 줄 바꾸지 않고 맨 앞으로 리턴

    \r\n -> 줄 바꾸고 맨 앞으로 리턴

    만일 확장열로 출력하고 싶지 않다면, 문자열 앞에 r 접두를 붙인다. r 접두가 있으면 문자열 내의 확장열을 적용하지 않고 있는 그대로(raw) 기억한다.

    print(r"c:\temp\new.txt")
    • 긴 문자열

    긴 문자열을 두 행에 나누어 쓰면 에러가 난다.

    s = "긴
    문자열" -> error

    이럴 때는 """ """ 세개의 큰 따옴표로 묶는다.

    s = """ 강나루
    구름 달 가듯이
    나그네"""
    print(s)

    """는 화이트 문자를 데이터로 표시해준다.

    화이트 문자는 탭, 스페이스 바, 엔터를 뜻한다.

    """를 사용하지 않는다면 행 계속 문자인 \를 사용한다. 행 끝에 \를 붙이면 이 줄이 아직 끝나지 않고 다음 줄에 계속 이어진다는 뜻이다. 개행하고 싶으면 \n 확장열을 적으면 된다.

    p = "강나루 \
    건너서 \
    나그네"
    print(p)

    콤마로 구분하지 않고 짧은 문자열을 쭉 나열하면 하나로 합쳐진다.

    s = "korea" "japan" "2002"
    print(s)
    -> koreajapan2002

    여러개의 문자를 개행해서 긴 문자열로 만들고 싶다면 전체를 괄호로 감싸야 한다.

    s = ("korea"
    "japan"
    "2002")
    print(s)

    ord 함수는 문자의 코드를 조사하고, chr 함수는 코드로부터 문자를 구한다.

    print(ord('a'))
    print(ord('A'))
    print(chr(98))
    
    for c in range(ord('A'), ord('Z') + 1):
        print(chr(c), end = '')

    3.3 그 외의 타입

    • 진위형

    참, 거짓을 나타내는 True, False의 첫 자가 대문자임을 유의해야 한다.

    파이썬의 None은 아무것도 아니라는 아주 특수한 의미로 사용된다. 변수에 None을 대입한 후 출력하면 None이 출력된다.

    검색 결과가 없다거나 무너가 에러가 발생했다는 표식으로 사용된다.

    • 컬렌션

    컬렌션은 여러 개의 값을 모아서 저장한다. 다른 언어의 배열과 구조체와 유사하다.

    리스트 -> 여러 개의 값을 하나의 변수에 순서대로 모아놓은 것이며 [] 괄호 안에 콤마로 구분하여 나열한다. 개수에 상관없이 얼마든지 많은 값을 하나의 리스트에 저장할 수 있다. 데이터 타입이 달라도 상관 없다.

    member = ["손오공", "저팔계", "사오정"]
    print(member)

    튜플(읽기 전용) -> 리스트와 거의 비슷하되 () 괄호로 멤버를 나열하고 실행 중에 값을 변경할 수 없다는 점이 다르다. 리스트는 요소를 삽입, 삭제, 추가할 수 있는데 비해 튜플은 한 번 정의한 값은 읽을 수만 있다.

    사전 -> 키와 값의 쌍을 저장하여 실시간 검색을 지원한다.

    집합 -> 요소의 모음을 관리하고 교집합, 합집합 등의 집합 연산을 지원한다.

    <형변환 함수>

    int -> int()

    float -> float()

    bool -> bool()

    str -> str() (항상 성공한다.)

    'Python' 카테고리의 다른 글

    07. 함수  (0) 2021.01.20
    06. 반복문  (0) 2021.01.20
    05. 조건문  (0) 2021.01.20
    04. 연산자  (0) 2021.01.20
    02. 변수  (0) 2021.01.20

    댓글

Designed by Tistory.