10진수를 입력받아 16진수(hexadecimal)로 출력해보자. Tip:: 16진수는 '0xa'처럼 숫자 앞에 '0x'를 붙여준다. 이것으로 'a'가 16진수의 'a'임을 인지한다. 10진수를 16진수로 변환하는 함수는 hex()이며, '0xa'와 같이 출력되므로 앞 두자리를 생략하고 출력하면된다. 따라서 '0xa'[2:]를 해주면 되는 것. n = int(input()) print(hex(n)[2:]) 입력받을 때는 정수형까지 쓰고, 출력할 때 hex 함수를 이용해 16진수로 변환한다. 8진수와 마찬가지로 앞에 0x가 붙으므로 출력할 땐 범위를 지정하여 출력한다. hexadecimal = int(input()) print( hex(hexadecimal)[2:] )
10진수를 입력받아 8진수(octal)로 출력해보자. Tip:: 8진수는 '0o12'처럼 숫자 앞에 '0o'를 붙여준다. 이것으로 '12'가 8진수의 '12'임을 인지한다. 10진수를 8진수로 변환하는 함수는 oct()이며, '0o12'와 같이 출력되므로 앞 두 자리를 생략하고 출력하면 된다. 따라서 '0o12'[2:]를 해주면 되는 것. n = oct(int(input())) print(n[2:]) int로 10진수를 먼저 입력받은 후 oct 함수를 사용해 8진수로 변환한다. n은 0o12가 저장되어있으므로 2번지부터 출력하도록 범위를 정해준다. octal = int(input()) print( oct(octal)[2:] ) 입력받을 땐 정수형까지만 쓰고, 출력할 때 8진수로 변환한다.
정수 1개를 입력받아 그대로 출력해보자. 파이썬에서의 int() 데이터형의 크기는 4바이트(32비트)로 지정되어있다. 이보다 큰 범위를 지정하고자 할 때는 long 데이터 형을 이용하면 된다. 파이썬에서는 4가지의 데이터형을 제공한다. 파이썬에서 제공하는 데이터형 int (plain integers) : 정수 long (long integers) : int 보다 범위가 큰 정수(메모리 한계까지 저장 가능, 사실상 무제한) float (floating point numbers) : 실수 complex (complex numbers) : 복소수 i = int(input()) print(i) 입력값은 문자열로 정의되므로 정수형으로 변환해서 저장한다. integer = int(input()) print(inte..
년월일(yyyy.mm.dd)를 입력받아, 일월년(dd-mm-yyyy)로 출력해보자. (단, 한 자리 일/월은 0을 붙여 두자리로 출력한다.) Tip:: 조건문 if-else문을 파이썬의 3항 연산자(Chapter 10 참고) 기능을 이용하면 더 간단하게 작성할 수 있다. 이렇게 작성하는 것이 메모리 효율성면에서도 효과적이다. (18번 참고) y, m, d = input().split('.') t = '{}-{}-{}'.format(y, m, d) if len(m) == 1 and len(d) == 1: m = '0'+ m d = '0'+ d elif len(m) == 1: m = '0'+ m elif len(d) == 1: d = '0'+ d print(t) 입력값을 닷으로 구분하여 년, 월, 일의 변수..
다섯 자리의 정수 1개를 입력받아 각 자리별로 나누어 출력한다. 입력 : 75254 출력 : [70000] [5000] [200] [50] [4] Tip:: 문자열 연산이 가능함을 잊지 말자. ex) '문자'*5 >> '문자문자문자문자문자' n = input() for i in range(len(n)): print('[{}]'.format(n[i]+'0'*i)) 반복문의 주기를 문자열의 길이로 정하고 format 함수를 이용해서 형식에 맞게 출력한다. 한 자리마다 0이 늘어나도록 만들어야 하는데 틀리게 했다. integer = input() count = len(integer)-1 for i in integer: print([int(i + '0'*count)]) count -= 1 자릿수를 변수에 따로 ..
단어를 1개 입력받는다. 입력받은 단어(영어)의 각 문자를 한줄에 한 문자씩 분리해 출력한다. (단, 단어의 문자(영어)를 하나씩 나누어 한 줄에 한 개씩 ' '로 묶어서 출력한다.) 입력 : Boy 출력 : 'B' 'o' 'y' Tip:: str도 List와 동일하게 배열과 같은 형식으로 접근가능하다. 문자열도 리스트와 같이 iterable 객체이기 때문이다. ex) '문자열'[0] >> '문' 반복문 for()를 이용하여 문자열의 길이만큼 반복한다. s = input() for i in range(len(s)): print("'"+s[i]+"'") 입력값을 s에 저장했는데 문자열도 배열처럼 접근이 가능하기 때문에 요소로 분리할 수 있다. 입력한 길이만큼 반복하도록 반복주기를 len을 사용해서 설정하고..