보람찬 코기의 개발자 블로그
article thumbnail
반응형

python

파이썬을 학습하면서 내장함수 활용 여부에 따라 코딩의 능률이 달라진다. 이번에는 내장함수에 대해 작성한다.

학부생활을 하면서, 특히 자바를 사용할 때 파이썬이 많이 그리웠다. 이유는 파이썬이 지원하는 내장함수가 많고 편리하기 때문이다.  

 

🔦내장 함수(Built-in-Function)란?

파이썬 인터프린터에서 기본적으로 제공하고 있는 함수를 "내장 함수" 라고 한다.

 

✓ 사용 해야 하는 이유

  • 외부 모듈과 다르게 import 하지 않고 바로 사용
  • 개발자들이 간결하게 코드 작성 및 효율적인 프로그래밍 가능
  • 다른 언어(JAVA,C)에 비해 매우 간결하게 핵심 기능을 구현

 

💻 내장 함수 종류

A
abs()
aiter()
all()
any()
anext()
ascii()
 
B
bin()
bool()
breakpoint()
bytearray()
bytes()
 
C
 
D
 
dir(__builtin__) // 입력해보고 확인해보자

 

★ 주요 내장 함수 설명

abs() : 주어진 숫자의 절댓값을 반환합니다. (복소수의 경우 해당 복소수의 크기 반환)

print("abs(-53)=",abs(-53))
-> 53

aiter(), anext()  : async(비동기) for 로 동작하는 클래스를 만들기 위해 구현이 필요한 메서드

 

all() : 주어진 iterable(리스트, 튜플, 집합(set), 문자열)의 모든 요소가 참(True)인지 여부를 판단하는 함수

print(all([1, 2, 3])
-> True
print(all([0, 2, 3])
-> False

any() : iterable 의 요소 중 어느 하나라도 참이면 True 를 돌려줍니다. iterable이 비어 있으면 False.

print(any([1, 0, 1, 0]))
->True
print(any([0, 0, 0, 0]))
->False

ascii() : 주어진 객체를 ASCII 문자로 나타내는 문자열로 변환하는 함수

print(ascii('hello'))        
->'hello'
print(ascii('안녕하세요'))  
-> '\uc548\ub155\ud558\uc138\uc694'

 

bin() : 주어진 정수를 이진 형태의 문자열로 변환하는 함수, 단 앞에 '0b'가 붙는다

print(bin(3))
-> '0b11'
print(bin(-10))
-> '-0b1010'

breakpoint() : (3.7버전 이상) 프로그램 실행중에 디버거를 호출하고 해당 지점에서 프로그램 실행을 일시 정지시키는 함수

def calculate_sum(n):
    total = 0
    for i in range(n):
        total += i
        if total > 10:
            breakpoint()  # 디버깅 지점
    return total

result = calculate_sum(5)
print(result)
//total이 10을 초과할 때마다 프로그램 실행을 일시 정지,ontinue 명령어를 입력하면 프로그램의 실행이 다시 시작

print(): 화면에 값을 출력하는 함수입니다. 주어진 인자들을 화면에 출력

print("Hello, World!")
-> Hello, World!

len(): 문자열, 리스트, 튜플 등과 같은 순서가 있는 시퀀스(sequence) 또는 컬렉션의 요소 수를 반환하는 함수. 

print(len("Hello"))
-> 5

eval() : eval은 python code로 실행 가능한 문자열을 인자로 받아 실제로 실행해주는 함수

eval('5+4')
-> 9

eval('round(4.9)')
-> 5

input(): 사용자로부터 키보드 입력을 받는 함수입니다. 사용자가 입력한 값을 문자열 형태로 반환.

name = input("이름을 입력하세요: ") //가나다라 입력.
print("안녕하세요, " + name + "님!")
-> 안녕하세요, 가나다라님!

int(), float(), str(): 각각 정수, 실수, 문자열로 값을 변환하는 함수.

num_str = "10"
num_int = int(num_str)
print(type(num_int)) 
-> <class 'int'>

num_float = float(num_str) //10.0으로 바뀐다
print(type(num_float))  
-> <class 'float'>

num = 10
num_str = str(num) # "10"으로 바뀐다 
print(type(num_str))  
-> <class 'str'>

 range(): 정수 시퀀스를 생성하는 함수입니다. 주어진 범위 내에서 숫자의 시퀀스를 만든다.

for i in range(5):
    print(i)
-> 0, 1, 2, 3, 4
# 범위는 0~4이다. 5가 아니다!!!

numbers = list(range(1, 10, 2))
print(numbers)
-> [1, 3, 5, 7, 9]
#1 부터 10 전까지 2씩 증가 <주의하자>

type(): 주어진 객체의 타입(type)을 반환하는 함수입니다.

num = 10
print(type(num))  
-> <class 'int'>

name = "Alice"
print(type(name)) 
-> <class 'str'>

numbers = [1, 2, 3]
print(type(numbers))  
-> <class 'list'>

sum(): 주어진 시퀀스의 모든 요소의 합을 반환하는 함수

numbers = [1, 2, 3, 4, 5]
total = sum(numbers)
print(total) 
-> 15

max(), min(): 주어진 시퀀스에서 최댓값과 최솟값을 반환하는 함수

numbers = [1, 2, 3, 4, 5]
print(max(numbers))
print(min(numbers))
-> 5   #가장 큰 값
-> 1   #가장 작은 값

append(), pop() : 리스트에 요소를 추가하거나 제거하는 함수

#____.append 형식으로 사용
fruits = ['apple', 'banana', 'orange']
fruits.append('grape') 
print(fruits)  
->['apple', 'banana', 'orange', 'grape']

popped_fruit = fruits.pop()
print(popped_fruit) 
-> 'grape'
print(fruits)  
-> ['apple', 'banana', 'orange']

# 자료구조에 주로 사용 나중에 따로 다루겠다

sorted(): 주어진 시퀀스를 정렬하여 새로운 리스트로 반환하는 함수 (기본적으로 오름차순으로 정렬)

# 정수에서 의 예제
numbers = [5, 2, 8, 1, 9]
sorted_numbers = sorted(numbers)
print(sorted_numbers)  
-> [1, 2, 5, 8, 9]

# 문자열 에서의 예제
letters = ['c', 'a', 'b', 'd']
sorted_letters = sorted(letters)
print(sorted_letters)  
-> ['a', 'b', 'c', 'd']

#sort(reverse=True)옵션을 사용하면 내림차순으로 정렬

zip(): 주어진 여러 시퀀스의 요소들을 묶어서 튜플의 리스트로 반환하는 함수 (시퀀스의 길이가 다르다면 짧은 시퀀스 길이를 기준)

numbers = [1, 2, 3]
letters = ['a', 'b', 'c']
zipped = zip(numbers, letters)
print(list(zipped))  
-> [(1, 'a'), (2, 'b'), (3, 'c')]

 

 

 

참조 - https://docs.python.org/ko/3/library/functions.html [파이썬 공식 문서]

- 추후에 지속적으로 가능한 모든 함수를 업로드할 예정이다.

반응형
profile

보람찬 코기의 개발자 블로그

@BoChan

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!