어떤 숫자를 받았을 때 절댓값을 돌려주는 함수
>>> abs(-3)
3
all(x)는 반복 가능한 자료형 x를 입력 인수로 받으며 이 x가 모두 참이면 True, 거짓이 하나라도 있으면 False를 돌려준다.
>>> all([1,2,3,0])
Flase
any(x)는 x 중 하나라도 참이 있으면 True를 돌려주고, x가 모두 거짓일 때에만 False를 돌려준다.
>>> any([1,2,3,0])
True
>>> any([0,""])
False
chr(i)는 아스키 코드 값을 입력받아 그 코드에 해당하는 문자를 출력하는 함수이다.
>>> chr(97)
'a'
>>> chr(48)
'0'
dir은 객체가 자체적으로 가지고 있는 변수나 함수를 보여준다.
>>> dir([1, 2, 3])
['append', 'count', 'extend', 'index', 'insert', 'pop',...]
>>> dir({'1':'a'})
['clear', 'copy', 'get', 'has_key', 'items', 'keys',...]
divmod(a,b)는 2개의 숫자를 입력으로 받는다. 그리고 a를 b로 나눈 몫과 나머지를 튜플 형태로 돌려주는 함수이다.
>>> divmod(7, 3)
(2,1)
순서가 있는 자료형(리스트, 튜플, 문자열)을 입력으로 받아 이덱스 값을 포함하는 enumerate 객체를 돌려준다.
>>> for i, name in enumerate(['body', 'foo', 'bar']):
... print(i, name)
...
0 body
1 foo
2 bar
실행 가능한 문자열(1+2,'hi'+'a' 같은 것)을 입력으로 받아 문자열을 실행한 결괏값을 돌려주는 함수이다.
>>> eval('1+2')
3
>>> eval("'hi'+'a'")
'hia'
filter 함수는 첫 번째 인수로 함수 이름을, 두 번째 인수로 그 함수레 차례로 들어갈 반복 가능한 자료형을 받는다.
#positive.py
def positive(l):
result = []
for i in l:
if i > 0:
result.append(i)
return result
print(positive([1, -3, 2, 0, -5, 6]))
결과값: [1, 2, 6]
filter함수를 사용하면 아래와 같이 간단하게 작성할 수 있다.
#filter1.py
def positive(x):
reuturn x > 0
print(list(filter(positive, [1, -3, 2, 0, -5, 6])))
결과값: [1, 2, 6]
또한 람다를 사용하면 더 간단하게 작성할 수 있다.
>>> list(filter(lamda x: x > 0, [1, -3, 2, 0, -5, 6]))
정수 값을 입력받아 16진수로 변환하여 돌려주는 함수이다.
>>> hex(234)
'0xea'
객체를 입력받아 고유 주소 값을 돌려주는 함수이다.
>>> a = 3
>>> id(3)
135072304
>>> id(a)
135072304
>>> b = a
>>> id(b)
135072304
사용자 입력을 받는 함수
>>> a = input() // 사용자가 입력한 정보를 변수 a에 저장
hi
>>> a
'hi'
>>> b = input("Enter: ")
Enter : hi
문자열 형태의 숫자나 소수접이 있는 숫자 등을 정수 형태로 돌려주는 함수이다.
>>> int('3')
3
>>> int(3.4)
3
>>> int('11', 2) //2진수로 표현된 11의 10진수 값
3
>>> int('1A', 16) //16진수로 표현된 1A의 10진수 값
26
첫 번째 인수로 인스턴스, 두 번째 인수로 클래스 이름을 받는다.
입력받은 인스턴스가 그 클래스의 인스턴스인지 판단하여 참이면 True, 거짓이면 False를 돌려주는 함수이다.
>>> class Person: pass
...
>>> a = Person()
>>> isinstance(a, Person)
True
입력값의 길이를 돌려주는 함수이다.
>>> len("python")
6
반복 가능한 자료형을 입력받아 리스트로 만들어주는 함수이다
>>> list("python")
['p', 'y', 't', 'h', 'o', 'n']
>>> list((1,2,3))
[1, 2, 3]
함수와 반복 가능한 자료형을 입력으로 받는다. 입력받은 자료형의 각 요소를 함수가 수행한 결과를 묶어서 돌려주는 함수이다.
# two_times.py
def twotimes(numberList):
result = []
for number in numberList:
result.append(number*2)
return result
result = two_tumes([1, 2, 3, 4])
print(result)
결과값: [2, 4, 6, 8]
map 함수를 사용하여 아래와 같이 바꿀 수 있다.
>>> def tw0o_times(x): return x*2
...
>>> list(map(two_times, [1, 2, 3, 4]))
[2, 4, 6, 8]
lambda를 사용하여 더욱 간단하게 바꿀 수 있다.
>>> list(map(lambda a: a*2, [1, 2, 3, 4]))
[2, 4, 6, 8]
인수로 반복 가능한 자료형을 입력받아 그 최댓값을 돌려주는 함수이다.
>>> max([1, 2, 3])
3
반대로 최솟값을 돌려주는 함수이다.
>>> min([1, 2, 3])
1
정수 형태의 숫자를 8진수 문자열로 바꾸어 돌려주는 함수이다.
>>> oct(34)
'0o42'
'파일 이름'과 '읽기 방법'을 입력받아 파일 객체를 돌려주는 함수이다. 읽기 방법을 생략하면 기본값이 읽기 전용 모드(r)로 파일 객체를 만들어 돌려준다.
- w : 쓰기 모드로 파일 열기
- r : 읽기 모드로 파일 열기
- a : 추가 모드로 파일 열기
- b : 바이너리 모드로 파일 열기
b는 w, r, a와 함께 사용한다.
>>> f = open("binary_file", "rb")
문자의 아스키 코드 값을 돌려주는 함수이다.
>>> ord('a')
97
x의 y제곱한 결괏값을 돌려주는 함수이다.
>>> pow(2, 4)
16
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]
>>> list(range(0, -10, -1))
[0, -1, -2, -3, -4, -5, -6, -7, -8, -9]
숫자를 입력받아 반올림해 주는 함수이다.
>>> round(4.6)
5
입력값을 정렬한 후 그 결과를 리스트로 돌려주는 함수이다.
>>> sorted([3, 1, 2])
[1, 2, 3]
문자열 형태로 객체를 변환하여 돌려주는 함수이다.
>>> str(3)
'3'
입력받은 리스트나 튜플의 모든 요소의 합을 돌려주는 함수이다.
>>> sum([1,2,3])
6
반복 가능한 자료형을 입력받아 튜플 형태로 바꾸어 돌려주는 함수이다.
>>> tuple("abc")
('a', 'b', 'c')
입력값의 자료형이 무엇인지 알려 주는 함수이다.
>>> type("abc")
<class 'str'>
동일한 개수로 이루어진 자료형을 묶어 주는 역할을 하는 함수이다.
>>> list(zip([1, 2, 3], [4, 5, 6]))
[(1, 4), (2, 5), (3, 6)]