본문 바로가기
Python

코딩테스트 - python 모음

by YUNZEE 2024. 11. 27.
728x90
for문

for i in range(len(num)) #리스트로 되어있지만 range를 사용하고 싶다. len( ) 활용

for i in num # 리스트를 그냥 사용하고 싶다.

 

replace( , )
print(input().strip().replace(' ',''))

입력을 apple pen 했다면

출력은 applepen 나옴

replace(' ','') '공백'을 ''공백 없음으로 바꿔줬기 때문이다.

 

join
words = ['Hello', 'world']
result = ' '.join(words)
print(result)  # 출력: 'Hello world'

join은 앞에 공백(' ')을 포함하여 words에 있는 두 단어를 합쳐준다.

 

set
# set 생성
my_set = {1, 2, 3, 4, 4, 5}  # 중복된 값 4는 자동으로 제거됨
print(my_set)  # 출력: {1, 2, 3, 4, 5}

# 요소 추가
my_set.add(6)
print(my_set)  # 출력: {1, 2, 3, 4, 5, 6}

# 요소 제거
my_set.remove(2)
print(my_set)  # 출력: {1, 3, 4, 5, 6}

# set에 값이 있는지 확인
print(3 in my_set)  # 출력: True
print(7 in my_set)  # 출력: False

집합은 순서가 없고 중복을 허용하지 않는 데이터 구조이다. 

*주의할 점 set은 순서가 없기 때문에 인덱싱이나 슬라이싱을 사용할 수 없다.

 

pow( , )
result = pow(2, 3)  # 2의 3제곱 = 2 * 2 * 2
print(result)  # 출력: 8

거듭제곱을 계산하거나, 모듈러 연산까지 할 수 있다.

result = pow(2, 3, 5)  # (2 ** 3) % 5 = 8 % 5
print(result)  # 출력: 3 (소수점 아웃)

 

map( , )

반복 가능한 객체의 각 요소에 함수를 적용하여 새로운 값을 생성하는 데 사용된다. 또한 리스트나 튜플 등으로 변환할 수 있다.

# 리스트의 각 요소를 제곱하는 예시
numbers = [1, 2, 3, 4, 5]

# map() 사용
result = map(lambda x: x**2, numbers)

# map 객체를 리스트로 변환
print(list(result))  # 출력: [1, 4, 9, 16, 25]
# 문자열 리스트를 모두 대문자로 변환
strings = ["hello", "world", "python"]

# map() 사용
result = map(str.upper, strings)

print(list(result))  # 출력: ['HELLO', 'WORLD', 'PYTHON']

 

for문과 map() 비교

for문

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

for num in numbers:
    result.append(num**2)

print(result)  # 출력: [1, 4, 9, 16, 25]

map( )

numbers = [1, 2, 3, 4, 5]
result = list(map(lambda x: x**2, numbers))

print(result)  # 출력: [1, 4, 9, 16, 25]
728x90