====== Python 내장 함수 ====== ===== 숫자 관련 ===== - **abs**(//x//) : 숫자의 절대값 반환(복소수는 크기 반환) * >>> abs(3) 3 >>> abs(-1.2) 1.2 - **divmod**(//a, b//) : a를 b로 나눈 몫과 나머지를 튜플 형태로 반환 * >>> divmod(7, 3) (2, 1) - **hex**(//x//) : 정수를 입력받아 16진수로 반환 * >>> hex(234) '0xea' - //class// **int**([//x//]) or //class// **int**(//x, base=10//) : 문자열 또는 숫자를 입력받아 정수 형태로 반환. base값을 입력하면 x의 값을 base값의 진수로 인식 * >>> int('3') 3 >>> int(3.4) 3 >>> int('1A', 16) 26 - **oct**([//x//]) : 정수를 입력받아 8진수로 반환 * >>> oct(34) '0o42' >>> oct(12345) '0o30071' - **pow**([//base, exp[, mod]//]) : base의 exp 거듭제곱을 반환. * >>> pow(3, 2) 9 >>> pow(38, -1, mod=97) 23 - //class// **range**(//stop//) or //class// **range**(//start, stop[, step]//) : 입력 받은 숫자에 해당하는 범위 값을 생성 반환. [[for]]문과 주로 같이 사용 * >>> list(range(5)) [0, 1, 2, 3, 4] >>> list(range(5, 10)) [5, 6, 7, 8, 9] >>> list(range(1, 10, 2)) [1, 3, 5, 7, 9] - **round**(//number[, ndigits]//) : 숫자를 받아 반올림 값을 반환 * >>> round(4.6) 5 >>> round(5.678, 2) 5.68 - **sum**(//iterable, /, start=0//) : 입력받은 열거형 데이터의 합을 반환 * >>> sum([1,2,3]) 6 >>> sum((4,5,6)) 15 ===== 문자 관련 ===== - **chr**(//i//) : 유니코드 포인트가 i인 문자를 반환 * >>> chr(97) 'a' >>> chr(8364) '€' - **eval**(//expression[, globals[, locals]]//) : 실행 가능한 문자열을 입력받다 문자열을 실행한 결과값을 반환.(globals 는 딕셔너리여야 하고. 제공되는 경우, locals 는 모든 매핑 객체) * >>> eval('1+2') 3 >>> eval("'hi' + 'a'") 'hia' >>> eval('divmod(4, 3)') (1, 1) - **ord**(//c//) : 유니코드 문자 c의 유니코드 포인트 반환 * >>> ord('a') 97 >>> ord('0') 48 - //class// **str**(//object=''//) or //class// **str**(//object=b'', encoding='utf-8', errors='strict'//) : 입력받은 데이터를 문자열 객체로 반환 * >>> str(3) '3' >>> str('hi') 'hi' ===== 열거형 관련 ===== - **enumerate**(//iterable [, start = 0]//) : 순서가 있는 자료형(리스트, 튜블, 문자열)을 입력으로 받아 인덱스 값을 포함하는 튜플 형태로 반환 * >>> for i, name in enumerate(['body', 'foo', 'bar']): ... print(i, name) ... 0 body 1 foo 2 bar - //class// **list**([//iterable//]) : 열거형 데이터를 입력받아 리스트로 반환 * >>> list("python") ['p', 'y', 't', 'h', 'o', 'n'] >>> list((1,2,3)) [1, 2, 3] - **sorted**(//iterable, *, key=None, reverse=False//) : 입력 받은 데이터를 정렬하여 [[list]] 형태로 반환 * >>> sorted([3, 1, 2]) [1, 2, 3] >>> sorted(['a', 'c', 'b']) ['a', 'b', 'c'] >>> sorted("zero") ['e', 'o', 'r', 'z'] >>> sorted((3, 2, 1)) [1, 2, 3] - //class// **tuple**([//iterable//]) : 열거형 데이터를 입력받아 튜플로 반환 * >>> tuple("abc") ('a', 'b', 'c') >>> tuple([1, 2, 3]) (1, 2, 3) >>> tuple((1, 2, 3)) (1, 2, 3) - **zip**([//*iterable//]) : 여러개의 iterable 데이터를 받아 각 자료를 묶어서 반환 * >>> list(zip([1, 2, 3], [4, 5, 6])) [(1, 4), (2, 5), (3, 6)] >>> list(zip([1, 2, 3], [4, 5, 6], [7, 8, 9])) [(1, 4, 7), (2, 5, 8), (3, 6, 9)] >>> list(zip("abc", "def")) [('a', 'd'), ('b', 'e'), ('c', 'f')] ===== 기타 ===== - **all**(//iterable//) : 입력 받은 모든 요소가 참이면 True 아닐 경우 False (빈 값은 True) * >>> all([1, 2, 3]) True >>> all([1, 2, 3, 0]) False >>> all([]) True - **any**(//iterable//) : 입력 받은 요소 중 한개 이상 참이면 True 아닐 경우 False (빈 값은 False) * >>> any([1, 2, 3, 0]) True >>> any([0, ""]) False >>> any([]) False - **filter**(//function, iterable//) : 입력 받은 함수에 iterable의 값을 차례대로 대입하여 참인 결과만 반환 * def positive(x): return x > 0 print(list(filter(positive, [1, -3, 2, 0, -5, 6]))) 결과값: [1, 2, 6] - **id**(//object//) : 객체를 입력 받아 고유 주소값을 반환 * >>> a = 3 >>> id(3) 135072304 - **input**([//prompt//]) : 사용자 입력을 받는 함수 * >>> s = input('--> ') --> Monty Python's Flying Circus >>> s "Monty Python's Flying Circus" - **isinstance**([//object, classinfo//]) : 첫 번째 인수로 인스턴스, 두 번째 인수로 클래스 이름을 받아. 입력으로 받은 인스턴스가 그 클래스의 인스턴스인지를 판단하여 참, 거짓 반환 * >>> class Person: pass ... >>> a = Person() >>> isinstance(a, Person) True - **len**([//s//]) : 객체 s의 길이를 반환 * >>> len("python") 6 >>> len([1,2,3]) 3 >>> len((1, 'a')) 2 - **map**([//function, iterable, ...//]) : 입력한 Function에 iterable 값을 대입하여 결과 열거형으로 반환 * >>> def two_times(x): ... return x*2 ... >>> list(map(two_times, [1, 2, 3, 4])) [2, 4, 6, 8] - **max**([//iterable, *[, key, default]//]) or **max**(//arg1, arg2, *args[, key]//): 입력한 인자의 최대값을 반환 * >>> max([1, 2, 3]) 3 >>> max("python") 'y' - **min**([//iterable, *[, key, default]//]) or **min**(//arg1, arg2, *args[, key]//): 입력한 인자의 최소값을 반환 * >>> min([1, 2, 3]) 1 >>> min("python") 'h' - **open**([//file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None//]) : [[open]] 문서 참조 - **print**(//*objects, sep=' ', end='\n', file=sys.stdout, flush=False//) : [[print]] 문서 참조 - //class// **type**([//object//]) or //class// **type**([//name, bases, dict//]) : 입력한 object의 자료형 반환 * >>> type("abc") >>> type([ ]) >>> type(open("test", 'w'))