Language/Python

[Python] 내장함수

Ella_K 2022. 6. 17. 21:47

 

abs

  • abs(x)
  • 어떤 숫자를 입력받았을때, 절댓값을 반환
abs(3) # 3
abs(-3) # 3
abs(-0.7) # 0.7

 

divmode

  • divmod(x,y) : x를 y로 나눈 몫과 나머지를 튜플 형태로 반환
divmod(7,3) # (2, 1)

 

sum

  • sum(iterable)
  • iterable 객체의 모든 요소의 합을 반환
print(sum([1,2,3])) # 6
print(sum((2,3,4))) # 9

 

max

  • max(iterable)
  • 반복 가능한 자료형을 입력받아 그 최댓값을 반환
max([1,2,3]) # 3

 

min

  • min(iterable)
  • 반복 가능한 자료형을 입력받아 그 최솟값을 반환
min([1,2,3]) # 1

 

pow

  • pow(x,y): x의 y 제곱한 결과값을 반환
pow(2,3) # 8

 

round

  • round(number, [, ndigits]) 
  • ndigits 가 없으면 0의 자리까지 반올림, 반환값은 int 형이다.
  • ndigits 가 있으면 ndigits의 자리까지 반올림, 반환값은 float 형이다.
a = round(2.6)
print(a, type(a)) # 3 <class 'int'>

b = round(2.6, 0) 
print(b, type(b)) # 3.0 <class 'float'>

c = round(7.562, 2)
print(c, type(c)) # 7.56 <class 'float'>
올림과 내림은 math 모듈의 ceil, floor를 사용해야 한다.
import math
math.ceil(3.14) # 4
math.floor(3.14) # 3

 


 

chr

  • chr(x)
  • 유니코드 값을 입력으로 받아 그 코드에 해당하는 문자를 출력
chr(97) # 'a'
chr(98) # 'b'
chr(44032) # '가'

 

ord

  • ord(문자)
  • 문자의 유니코드 값을 반환
ord('a') # 97

 

hex

  • hex(x)
  • 정수 값을 입력 받아 16진수로 변환하여 반환
hex(234) # '0xea'

 

oct

  • oct(x)
  • 정수 값을 입력 받아 8진수 문자열로 바꾸어 반환
oct(34) #'0o42'

 


 

int

  • int(x)
  • 문자열 형태의 숫자나 소수점이 잇는 숫자 등을 정수 형태로 반환
  • 정수를 입력으로 받으면 그대로 반환
int('2') # 2
int(2.5) # 2

 

  • int(x, radix) 는 radix 진수로 표현된 문자열 x를 10진수로 변환하여 반환한다.
int('11', 2) # 3
int('1A', 16) # 26

 

str

  •  str(object)
  • 객체를 문자열 형태로 변환하여 반환
print(str(2)) # '2'

print(str(234)) # '234'

print(str([1,2])) # '[1,2]'

 

list

  • list(iterable object)
  • 반복 가능한 자료형을 입력 받아 리스트로 만들어 반환
list('hello') # ['h','e','l','l','o']

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

 

tuple

  • tuple(iterable)
  • 반복 가능한 자료형을 입력받아 튜플 형태로 바꾸어 반환
  • 튜플이 입력으로 들어오면 그대로 반환
print(tuple('abc')) # ('a','b','c')
print(tuple([1,2,3])) # (1,2,3)

 


 

filter

  • filter(함수, iterable object)
  • 첫 번째 인수로 함수 이름을, 두번째 인수로 함수에 차례로 들어갈 iterable 객체를 받는다.
  • 두 번째 인수인 iterable 객체가 첫 번째 인수인 함수에 입력되었을 때 반환 값이 참인 것만 묶어서 반환한다.
def positive(x):
    return x > 0

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

  • map(function, iterable)
  • 함수와 반복 가능한 자료형(iterable object)을 입력으로 받는다.
  • 입력 받은 자료형의 각 요소를 함수 function이 수행한 결과를 반환한다.
def two_times(x):
    return x*2
    
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

  • zip(*iterable) (*iterable은 반복 가능한 자료형 여러개를 입력할 수 있다는 의미이다.) 
  • 동일한 개수로 이루어진 자료형의 각 원소를 튜플로 묶어준다.
a = list(zip([1, 2, 3], [4, 5, 6])) 
print(a) # [(1, 4), (2, 5), (3, 6)]

b = list(zip([1, 2, 3], [4, 5, 6], [7, 8, 9])) 
print(b) #[(1, 4, 7), (2, 5, 8), (3, 6, 9)]

c = list(zip("abc", "def")) 
print(c) #[('a', 'd'), ('b', 'e'), ('c', 'f')]

 

range

  • for 문과 자주 사용됨
  • range(n) : 0 부터 n-1까지 수를 차례로 나열 
  • range(시작, 끝+1) : 시작 값부터 끝 값까지 수를 차례로 나열
  • range(시작, 종료, step) : 시작 값부터 step 간격으로 종료 숫자 전(미만)까지 수를 차례로 나열
print(list(range(5))) # [0,1,2,3,4]
print(list(range(1,6))) # [1,2,3,4,5]
print(list(range(1,15,3))) # [1,4,7,10,13]
print(list(range(5,0,-1))) # [5,4,3,2,1]
print(list(range(15,2,-3)))  # [15,12,9,6,3]

for i in range(5):
  print(i,end=' ')
print()
# 0 1 2 3 4

for i in range(5,0,-1):
  print(i,end=' ')
# 5 4 3 2 1

 

enumerate

  • enumerate(object)
  • 순서가 있는 자료형 (리스트, 튜플, 문자열)을 입력으로 받아 인덱스 값을 포함하는 enumerate 객체를 반환
for i, name in enumerate(['Tom','Amy','Bella']):
  print(i, name)
  
# 0 Tom
# 1 Amy
# 2 Bella

 


 

type

  • type(object)
  • class의 이름을 불러오는 함수
print(type('abc')) # <class 'str'> 'abc' 는 str라는 class의 객체(instance) 이다.
print(type([])) # <class 'list'>

 

dir

  • dir(object)
  • 객체가 자체적으로 가지고 있는 변수나 함수를 보여준다.
dir([1,2,3])
# ['__add__', '__class__', '__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']

dir({'name':'amy'})
# ['__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', 
# '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', 
# '__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', 
# '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', 
# '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'clear', 'copy', 
# 'fromkeys', 'get', 'items', 'keys', 'pop', 'popitem', 'setdefault', 'update', 'values']

 

eval

  • eval(문자열)
  • 실행가능한 문자열을 입력으로 받아 문자열을 실행한 결과값을 반환
a = eval('1+2')
print(a, type(a)) # 3 <class 'int'>

eval("'hi'+'a'") # 'hia'

eval('divmod(4,3)') # (1,1)

 

id

  • id(object)
  • 객체의 고유 주소 값을 반환
a = 6
print(id(6)) # 140552545032288
print(id(a)) # 140552545032288

b = a
print(id(b)) # 140552545032288

c = 7 
print(id(c)) # 140552545032320

 

input

  • input([prompt])  ([] 기호는 괄호 안의 내용을 생략할 수 있다는 관례 표기법)
  • 사용자 입력을 받는 함수
  • 문자열로 입력받는다
a = input()
hi
print(a) # 'hi'

b = input("Enter: ")
Enter: hi
print(b) # 'hi'

 

isinstance

  • isinstance(object, class)
  • 입력으로 받은 인스턴스가 그 클래스의 인스턴스인지를 판단하여 참이면 True, 거짓이면 False를 반환
class Person: pass

a = Person()
print(isinstance(a,Person)) # True

b = 3
print(isinstance(b,Person)) # False

 

len

  • len(s)
  • s의 길이 (요소의 전체 개수)를 반환
len('hello') # 5
len([1,2,3,4]) # 4

 

all

  • all(iterable object)
  • iterable 객체를 입력 인수로 받으며, 객체의 요소가 모두 참이면 True, 거짓이 하나라도 있으면 False를 반환
all([1,2,3]) # True
all([1,2,3,0]) # False
all([]) # True

 

any

  • all의 반대
  • iterable 객체를 입력 인수로 받으며, 객체의 요소 중 하나라도 참이 있으면 True, 모두 거짓일 때에만 False를 반환.
any([1,2,3,0]) # True
any([0,""]) # False
any([]) # False

 

sorted

  • sorted(iterable)
  • 입력받은 iterable 객체를 정렬한 후 그 결과를 리스트로 반환
a = [3, 1, 2]
print(sorted(a)) # [1,2,3]
print(a) # [3,1,2]

b = 'zero'
print(sorted(b)) # ['e','o','r','z']

c = (4,5,1,3)
print(sorted(c)) # [1,3,4,5]
리스트 관련 함수 list.sort() 와 헷갈리지 말자
a = [3,2,1]
a.sort()
print(a) # [1,2,3]

 


참고

'Language > Python' 카테고리의 다른 글

[Python] requests 라이브러리  (0) 2022.07.10
[Python] 입출력  (0) 2022.06.22
[Python] 기본 문법 - 함수  (0) 2022.06.15
[Python] 기본 문법 - 조건문, 반복문  (0) 2022.04.30
[Python] 기본 문법 - 자료형  (0) 2022.04.28