[Python] 2진수˙8진수˙10진수˙16진수 변환

    # 10진수 → 2, 8, 16진수

    bin(), oct(), hex() 이용

    10진수 → 2진수 : bin()

    10진수 → 8진수 : oct()

    10진수 → 16진수 : hex()

    a = 10
    
    bin = bin(a)
    oct = oct(a)
    hex = hex(a)
    
    print(bin) #0b1010
    print(oct) #0o12
    print(hex) #0xa

     

    format() 이용

    #을 제거하면 0b, 0o, 0x같은 접두어가 빠진 형태가 출력됨

    a = 10
    
    bin = format(a, '#b')
    oct = format(a, '#o')
    hex = format(a, '#x')
    
    print(bin)
    print(oct)
    print(hex)

     

     

    # 2, 8, 16진수  → 10진수

    int(문자열, 진수)

    문자열 " "을 입력하지 않으면 오류 발생함

    a = "0b1010"
    print(int(a, 2))
    
    b = "0o12"
    print(int(b, 8))
    
    c = "0xa"
    print(int(c, 16))

     

    int(문자열)
    a = 0b1010
    print(int(a))
    
    b = 0o12
    print(int(b))
    
    c = 0xa
    print(int(c))

    댓글