====== 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'))