지난 포스팅에서 파이썬 내장 함수 중 enumerate eval filter 함수에 대해 공부 해 보았습니다.
이번 포스팅에서는 파이썬 내장 함수 hex id input int 함수에 대해 공부 해 보도록 하겠습니다.
파이썬 내장 함수
hex
hex 내장 함수는 숫자(정수)를 입력 받아서 16진수의 문자열(hexadecimal)로 변환해서 리턴을 해 주는 함수 입니다.
>>> hex(123)
'0x7b'
>>>
hex 내장 함수의 경우는 그냥 입력하는 대로 16진수로 결과를 보여주기 때문에 더 설명은 필요가 없을 것 같습니다.
id
id 내장 함수는 객체(object)를 입력을 받아서 객체가 가지고 있는 고유 주소의 값. 레퍼런스 라고 하는 값을 리턴을 해주는 함수입니다.
>>> a = 3
>>> id(3)
1423013970224
>>> id(a)
1423013970224
>>> b = a
>>> id(b)
1423013970224
>>>
위 코드를 보면 아시겠지만 3, a, b 의 고유 주소값은 모두 1423013970224 입니다.
이 말은 3, a, b 가 모두 같은 객체를 가리키고 있다는 말입니다.
만약에 id(4) 라고 입력을 하게 된다면 4 는 기존 3, a, b 와는 다른 객체이므로 당연히 다른 고유 주소 값을 리턴을 하게 될 것입니다.
>>> id(4)
1423013970256
input
input 함수는 프롬프트에서 사용자 입력을 받게 해주는 함수입니다.
input([프롬프트])
입력 값으로 문자열을 전달하게 되면 그 문자열은 프롬프트가 됩니다.
그리고 [] 기호는 괄호 안의 내용을 생략할 수 있다는 관례 표기법 임을 감안해서 생각하시면 됩니다.
>>> a = input()
hello
>>> a
'hello'
>>> b = input("Enter : ")
Enter : hello
>>> b
'hello'
>>>
a 라는 변수에 input() 함수를 대입을 하게 되면 바로 입력을 할 수 있게 나옵니다.
거기에 입력된 값을 a 변수의 값이 됩니다.
b 라는 변수에서는 그냥 값을 입력만 하는게 아니라 값을 입력할 수 있는 문장을 출력을 하면 입력을 받게 됩니다.
결과는 a 와 동일하게 진행이 됩니다.
int
int 내장 함수는 integer 즉 정수를 리턴하는 내장 함수로 문자열 형태로 입력받는 숫자나 소수점이 있는 숫자를 정수로 리턴을 하게 됩니다.
만약 정수가 입력된다면 별 변화없이 당연히 그냥 정수값 그대로 리턴을 하게 됩니다.
>>> int('5')
5
>>> int(3.14)
3
>>>
int 내장 함수는 위 코드처럼 단순하게 숫자나 문자열을 정수로 리턴을 해주는 기능 외에도 다른 기능이 있습니다.
>>> int('111', 2)
7
위 코드는 2진수로 입력된 ‘111’ 값을 10진수로 표현한 결과입니다.
이처럼 int(x, radix) 라고 입력을 하면 radix 진수로 표현된 문자열 x 를 10진수로 변환해서 리턴을 해 줍니다.
>>> int('1A', 16)
26
위 코드는 이전에서 2진수로 입력했던 것을 16진수로 입력을 한 결과입니다.
16진수 1A 값을 10진수인 26으로 변환해서 리턴을 해주었습니다.
isinstance
isinstance 내장 함수는 isinstance(object, class)의 형태로 입력을 받고 첫 번째 인수로 객체, 두 번째 인수로 class 를 입력을 받게 됩니다.
입력으로 받은 객체가 해당 클래스의 인스턴스 인지를 판단하고 참이면 True, 거짓이면 False 를 리턴을 하게 됩니다.
>>> class Person: pass
...
>>> a = Person()
>>> isinstance(a, Person)
True
>>>
위 코드처럼 a 객체가 Person 클래스의 의해 생성된 인스턴스 임을 확인해 볼 수 있습니다.
>>> b = 3
>>> isinstance(b, Person)
False
>>>
b 라는 객체는 Person 클래스가 만든 인스턴스가 아니라 False 를 리턴하는 것을 확인 할 수 있습니다.
- 이 포스팅은 ‘위키독스’ 의 ‘점프 투 파이썬‘ 전자책을 구매하여 독학하기 위한 자료로 작성했습니다.
