1. 숫자형 자료형 관련
abs(x) : 숫자의 절댓값 반환
>>> abs(12.5) # 12.5
>>> abs(-3.11) # 3.11
divmod( a, b ) : a를 b로 나눈 몫과 나머지를 튜플 형태로 반환
>>> divmod(12,7) # (1, 5)
round(number[, ndigits]) : 숫자를 입력받아 반올림해 주는 함수
>>> round(4.6) # 5
>>> round(4.2) # 4
>>> round(5.678, 2) # 5.68
pow(x, y) : x의 y 제곱한 결괏값을 반환
>>> pow(2, 4)
16
>>> pow(3, 3)
27
2. 자료형 변환
str / list / tuple / set
int : 문자열 형태의 숫자나 소수점이 있는 숫자 등을 정수 형태로 돌려주는 함수
int(x) : 인자의 형식을 기본 10진수로 인식
int(x, y) : 인자의 형식을 지정 가능
>>> int(3.4) # 3
>>> int('1A',16) # 26
>>> int('3.4') # 에러 발생
3. iterable 자료형 관련
max / min / sum / len
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]
>>> list(range(0, -10, -1)) # [0, -1, -2, -3, -4, -5, -6, -7, -8, -9]
sorted(iterable, [reverse]) : 입력값을 오름차순 정렬(기본값)한 후 그 결과를 리스트로 반환
>>> sorted([3, 1, 2]) # [1, 2, 3]
>>> sorted(['a', 'c', 'b']) # ['a', 'b', 'c']
>>> sorted("zero") # ['e', 'o', 'r', 'z']
>>> sorted([3, 1, 2],reverse=True) # [3, 2, 1]
all(iterable) : x의 요소가 모두 참이면 True, 거짓이 하나라도 있으면 False를 반환
단, all의 인수가 빈 list, tuple, set이면 True를 반환
any(iterable) : x의 요소 중 하나라도 참이 있으면 True, x가 모두 거짓일 때에만 False를 반환
단, any의 인수가 빈 list, tuple, set이면 False를 반환
>>> all([1,2,3]) # True >>> all([1, 2, 3, 0]) # False >>> all([]) # True >>> any([1,2,3]) # True >>> any([1, 2, 3, 0]) # True >>> any([0, ""]) # False >>> any([]) # False |
자료형의 참과 거짓을 구분 |
enumerate(iterable)
: 순서가 있는 자료형(리스트, 튜플, 문자열)을 입력으로 받아 인덱스 값을 포함하는 enumerate 객체 반환
print(enumerate([1,2,3])) # <enumerate object at 0x000001E4EADF0980>
for (index, data) in enumerate(['apple', 'tomato', 'orange']):
print(index, data)
# 반환값
0 apple
1 tomato
2 orange
filter(f, iterable) : 첫 번째 인수로 함수 이름, 두 번째 인수로 반복 가능한 자료형을 받아, 첫 번째 인수인 함수에 입력되었을 때 반환 값이 참인 것만 묶어서(걸러 내서) filter객체를 반환
def positive(x):
return x > 0
print(filter(positive, [1, -3, 2, 0, -5, 6])) # <filter object at 0x0000021DB16DBC40>
print(list(filter(positive, [1, -3, 2, 0, -5, 6]))) # [1, 2, 6]
print(list(filter(lambda x: x > 0, [1, -3, 2, 0, -5, 6]))) # [1, 2, 6]
map(f, iterable) : 함수(f)와 반복 가능한(iterable) 자료형을 입력 받아, 입력받은 자료형의 각 요소를 함수 f가 수행한 결과를 묶어서 map객체로 반환
def two_times(x):
return x*2
print(map(two_times, [1, 2, 3, 4])) # <map object at 0x0000025943C3BC40>
print(list(map(two_times, [1, 2, 3, 4])) ) # [2, 4, 6, 8]
print(list(map(lambda a: a*2, [1, 2, 3, 4]))) # [2, 4, 6, 8]
zip(*iterable) : 동일한 개수로 이루어진 자료형을 묶어 주는 역할을 하는 함수
※ 여기서 사용한 *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')]
4. 진수 변환
oct / hex
>>> hex(3) # 0x3
>>> hex(17) # 0x11
>>> oct(3) # 0o3
>>> oct(11) # 0o13
5. 문자처리 함수
chr(num) : 유니코드(Unicode) 값 -> 문자
ord(char) : 문자 -> 유니코드 값
>>> chr(97) # 'a'
>>> chr(44032) # '가'
>>> ord('a') # 97
>>> ord('가') # 44032
6. 입출력 함수
print( *a, [sep], [end] )
input([prompt]) : 사용자 입력을 받는 함수, prompt는 화면에 출력할 문자열.
open(filename, [mode])
: "파일 이름"과 "읽기 방법(mode)"을 입력받아 파일 객체를 돌려주는 함수, 읽기 방법(mode)을 생략하면 기본값인 읽기 전용 모드(r)로 파일 객체를 만들어 반환
[ mode설명 ]
w | 쓰기 모드로 파일 열기 |
r | 읽기 모드로 파일 열기 |
a | 추가 모드로 파일 열기 |
b | 바이너리 모드로 파일 열기 |
f1 = open("binary_file", "wb")
f2 = open("read_mode.txt", 'w')
f3 = open("read_mode.txt")
6. 기타 함수
dir(개체) : 객체가 자체적으로 가지고 있는 변수나 함수의 list 반환
>>> dir([1,2,3]) # list의 변수, 함수 반환 ['__add__', '__class__', '__class_getitem__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort'] |
id(x) : 객체를 입력받아 객체의 고유 주소 값(레퍼런스)을 돌려주는 함수
>>> a = 3
>>> b = a
# 동일 id - 135072304(os할당)
>>> id(3)
>>> id(a)
>>> id(b)
type(object) : 객체의 자료형 반환
>>> type("abc") # <class 'str'>
>>> type(open("test", 'w')) # <class '_io.TextIOWrapper'>
eval(expression )
: 실행 가능한 문자열(1+2, 'hi' + 'a' 같은 것)을 입력으로 받아 문자열을 실행한 결괏값을 돌려주는 함수, 보통 eval은 입력받은 문자열로 파이썬 함수나 클래스를 동적으로 실행하고 싶을 때 사용한다.
>>> eval('1+2')
3
>>> eval("'hi' + 'a'")
'hia'
>>> eval('divmod(4, 3)')
(1, 1)
isinstance(object, class )
: 첫 번째 인수로 인스턴스, 두 번째 인수로 클래스 이름을 받아, 클래스의 인스턴스인지를 판단하여 bool값 반환
class Car: pass
car1 = Car()
print(isinstance(car1,Car))
'점프 투 파이썬 정리' 카테고리의 다른 글
library (0) | 2022.10.23 |
---|---|
병렬처리 (0) | 2022.04.29 |
11.5. 로깅 (0) | 2022.04.27 |
댓글