관리 메뉴

정리왕

파이썬 내장함수2 본문

6.개발/파이썬 공부하기

파이썬 내장함수2

정리합니다 2020. 12. 5. 21:02
반응형

파이썬 내장함수 2



11) id

id(object)는 객체를 입력받아 객체의 고유 주소 값(레퍼런스)을 돌려주는 함수이다.

>>> a = 3	 
>>> id(3)	 
4319987824

>>> id(a)	 
4319987824

>>> b = a	 
>>> id(b)	 
4319987824

위 예는 3, a, b는 고유 주소 값이 모두 4319987824이다.

즉, 3, a, b가 모두 같은 객체를 가리키고 있다.

 

 

만약 id(4)라고 입력하면 4는 3, a, b와 다른 객체이므로 당연히 다른 고유 주소 값이 출력된다.

>>> id(4)
4319987856

 

 

 

 

12) input

input([prompt])은 사용자 입력을 받는 함수이다.

매개변수로 문자열을 주면 다음 세 번째 예에서 볼 수 있듯이 그 문자열은 프롬프트가 된다.

★ [ ]기호는 괄호 안의 내용을 생략할 수 있다는 관례 표기법임을 기억하자.

>>> a = input()	 
hi
>>> a	 
'hi'
>>> b = input("Enter: ")
Enter: hi

 

위에서 입력받은 문자열을 확인해 보면 다음과 같다.

>>> b	 
'hi'     ========> 사용자가 입력으로 받은 'hi'출력

 

 

 

 

13) int

int(x)는 문자열 형태의 숫자나 소수점이 있는 숫자 등을 정수 형태로 돌려주는 함수로, 정수를 입력으로 받으면 그대로 돌려준다.

>>> int("3")    ========> 문자열 형태 '3'	
3
>>> int(3.4)	========> 소수점이 있는 숫자 3.4
3

 

int(x, radix)는 radix는 진수로 표현된 문자열 x를 10진수로 변환하여 돌려준다.

2진수로 표현된 11의 10진수 값은 다음과 같이 구한다.

>>> int('11',2)
3

 

16진수로 표현된 1A의 10진수 값은 다음과 같이 구한다.

>>> int('1A', 16)
26

 

 

 

14) isinstance

isinstance(object, class)는 첫 번째 인수로 인스턴스, 두번째 인수로 클래스 이름을 받는다.

입력으로 받은 인스턴스가 그 클래스의 인스턴스인지를 판단하여 참이면 True, 거짓이면 False를 돌려준다.

>>> class Person: pass     ======> 아무 기능이 없는 Person 클래스 생성
...
>>> a = Person()           =======> Person 클래스의 인스턴스 a생성
>>> isinstance(a, Person)  =======> a가 Person 클래스의 인스턴스인지 확인
True

위 예는 a가 Person 클래스가 만든 인스턴스임을 확인시켜 준다.

 

 

>>> b = 3	
>>> isinstance(b, Person)   =======> b가 Person 클래스의 인스턴스인지 확인
False

b는 Person 클래스가 만든 인스턴스가 아니므로 False들 돌려준다.

 

 

 

15) len

len(s)은 입력값 s의 길이(요소의 전체 개수)를 돌려주는 함수이다.

>>> len("python")	
6
>>> len([1,2,3])	
3
>>> len((1,'a'))	
2

 

 

16) list

list(s)는 반복 가능한 자료형 s를 입력받아 리스트로 만들어 돌려주는 함수이다.

>>> list("python")	
['p', 'y', 't', 'h', 'o', 'n']

>>> list((1,2,3))	
[1, 2, 3]

 

list 함수에 리스트를 입력으로 주면 똑같은 리스트를 복사하여 돌려준다.

>>> a = [1, 2, 3]
>>> b = list(a)
>>> b	
[1, 2, 3]

 

 

 

 

17) map

map(f, iterable)은 함수(f)와 반복 가능한(iterable) 자료형을 입력으로 받는다. 

map은 입력 받은 자료형의 각 요소를 함수 f가 수행한 결과를 묶어서 돌려주는 함수이다.

def two_times(numberList):
    result=[]
    for number in numberList:
        result.append(number*2)
    return result

result = two_times([1,2,3,4])
print(result)

two_times 함수는 리스트 요소를 입력받아 각 요소에 2를 곱한 결과값을 돌려준다.

[2, 4, 6, 8]

 

 

map함수를 사용하면 다음처럼 간편하게 바꿀 수 있다.

def two_times(x): return x*2
list(map(two_times, [1,2,3,4]))

[2, 4, 6, 8]

이제 앞 예제를 해석해보자.

먼저 리스트의 첫 번째 요소인 1이 two_times 함수의 입력값으로 들어가고 1 * 2의 과정을 거쳐서 2가된다.

다음으로 리스트의 두 번째 요소인 2가 2 * 2의 과정을 거쳐 4가 된다.

따라서 결과값 리스트는 이제 [2, 4]가 된다.

총 4개의 요소값이 모두 수행되면 마지막으로 [2, 4, 6, 8]을 돌려준다.

이것이 map 함수가 하는 일이다.

★위 예에서 map의 결과를 리스트로 보여 주기 위해 list함수를 사용하여 출력하였다.

 

 

앞의 예는 lambda를 사용하면 다음처럼 간략하게 만들 수 있다.

>>> list(map(lambda a: a*2, [1, 2, 3, 4]))
	
[2, 4, 6, 8]

 

 

 

 

18) max

max(iterable)는 인수로 반복 가능한 자료형을 입력받아 그 최대값을 돌려주는 함수이다.

>>> max([1,2,3])
3

>>> max("python")
'y'

 

 

 

19) min

min(iterable)은 max함수와 반대로, 인수로 반복 가능한 자료형을 입력받아 그 최소값을 돌려주는 함수이다.

>>> min([1,2,3])	
1

>>> min("python")	
'h'

 

 

 

20) oct

oct(x)는 정수 형태의 숫자를 8진수 문자열로 바꾸어 돌려주는 함수이다.

>>> oct(34)
'0o42'

>>> oct(12345)
'0o30071'

 

반응형

'6.개발 > 파이썬 공부하기' 카테고리의 다른 글

파이썬 외장함수 1  (0) 2020.12.05
파이썬 내장함수 3  (0) 2020.12.05
파이썬 내장함수 1  (0) 2020.12.05
파이썬 예외처리  (0) 2020.12.05
파이썬 패키지2 (__init__.py의 용도)  (0) 2020.12.01
Comments