Python

Python 함수 정리(계속 업데이트 예정)

SS_G 2023. 3. 22. 14:16
반응형

몫, 나머지 함수

1. divmod() : 두개 숫자를 나누었을때 몫과 나머지 반환

# n을 2진수로 변환하는 예시코드
def to_binary(n):
    binary = ''
    while n > 0:
        n, remainder = divmod(n, 2)
        binary = str(remainder) + binary
    return binary
    
 # divmod(a, b) => (a//b, a%b) 와 같음

제곱수  함수

1. sqrt() : 제곱수 여부 판별, n이 제곱수인지 판별해 True or False 반환

import math

def is_square(n):
    sqrt_n = int(math.sqrt(n))
    return sqrt_n ** 2 == n

# 사용 예시
print(is_square(16))  # True
print(is_square(25))  # True
print(is_square(17))  # False

대소문자 비교 함수

1. upper() : 문자열 모두 대문자로 변환

2. lower() : 문자열 모두 소문자로 변환

3. swapcase() : 문자열 대소문자를 서로 바꿔줌

4. isupper() : 문자열에 대문자만 있는지 확인 True or False 를 반환

5. islower() : 문자열에 소문자만 있는지 확인 True or False 를 반환

text = "Hello, World!"
text_upper = text.upper()
print(text_upper) # "HELLO, WORLD!"

text_lower = text.lower()
print(text_lower) # "hello, world!"

text_swapcase = text.swapcase()
print(text_swapcase) # "hELLO, wORLD!"

text_upper = text.isupper()
print(text_upper) # True

문자열이 숫자인지 판별하는 함수

1. isdigit() : 문자열이 모두 숫자인지 판별하는 함수 + 유니코드 문자열도 숫자로 인식

2. isdecimal() : 문자열이 모두 10진수(decimal)인지 판별하는 함수 (10진수 0~9만 판별)

num = "12345"
num2 = "12345a"

is_all_digit = num.isdigit()
print(is_all_digit) # True

is_all_digit = num2.isdigit()
print(is_all_digit) # False

is_all_decimal = num.isdecimal()
print(is_all_decimal) # True

is_all_decimal = num2.isdecimal()
print(is_all_decimal) # False

특정 요소 걸러내는 함수

1. filter() : 주어진 iterable에서 특정 조건을 만족하는 요소를 걸러내는 함수

# 사용법
filter(함수, iterable)
iterable 요소를 함수에 적용하여 결과가 True인 요소들만 걸러낸다

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
print(even_numbers) # [2, 4, 6, 8, 10]

# lamdba x: x % 2 == 0와 numbers를 인자로 전달
# 람다함수에서 x가 짝수인지 판별 후 True or False 반환
# filter()는 람다 함수를 numbers 리스트의 각 요소에 적용하여 True인 요소만 걸러내고 리스트로 반환한다.

2. lambda() : 함수를 간단하게 재정의 할 수 있다. filter()와 같이 쓰임

# 사용법
lambda 매개변수: 반환값

add = lambda x, y: x + y
print(add(2, 3))    # 5


numbers = [1, 2, 3, 4, 5]

new_numbers = list(map(lambda x: x + 2, numbers))
print(new_numbers)    # [3, 4, 5, 6, 7]

정렬 함수

1. sort() : 리스트 요소 정렬 (객체 자체를 정렬)

2. sorted() :리스트 + 문자열 정렬 가능 (원본 리스트는 바뀌지 않고 새로운 리스트를 반환)

nums = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]

nums.sort()
print(nums)    # [1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9]

sorted_nums = sorted(nums)
print(sorted_nums)    # [1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9]
print(nums)    # [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]

문자열 구성요소 확인 함수

 1. isalpha() : 문자열이 알파벳으로만 이루어져 있는지 확인하는 메소드 True or False 반환

 2. isspace() : 문자열이 공백인지 확인 True or False 반환

string1 = "abcdef"
string2 = "123abc"
string3 = ' '
print(string1.isalpha()) # True 출력
print(string2.isalpha()) # False 출력
print(string3.isspace()) # Treu 출력

itertools 모듈

 1. permutations() : iterable 객체에서 가능한 모든 순열을 생성하는 함수

import itertools

permutations(iterable, r=None)

# iterable : 객체
# r : 생성할 순열의 길이 기본값 = 'None'이며 iteralbe 객체의 길이와 같은 길이의 순열이 생성됨

 

반응형

'Python' 카테고리의 다른 글

python - combinations 함수  (0) 2023.03.13
if__name__ == '__main__'  (1) 2023.01.31