T.I.L May 4, 2023 (Python 문법 - 애매하게 이해하고, 잘못 이해하고, 까먹었던 )

2023. 5. 4. 11:27T.I.L (Today_I_Learned)

문제의 문법들


1. '//' 연산자

나눗셈 연산에서 몫에 해당하는 값을 출력해 줍니다.

answer = 10 // 3

print(answer) # 3

 

2. sum

Iterable한 자료형인 리스트, 튜플, 딕셔너리를 인자로 받아 요소들의 총 합을 구할 때에 사용합니다.

list = [1, 2, 3, 4, 5]
sum_list = sum(list)

print(sum_list) # 15


list = [1, 2, 3, 4, 5]
sum_list = sum(list, 100)

print(sum_list) # 115

 

3. pop

인자값을 주지 않을 경우 기본값으로 리스트 가장 마지막에 있는 요소를 빼낸 뒤 삭제합니다.

test_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
answer1 = test_list.pop()
answer2 = test_list.pop(4)

print(f"answer1 결과: {answer1}, answer2 결과: {answer2}") # answer1 결과: 10, answer2 결과: 5

 

4. sort, sorted

sorted()는 인자값으로 리스트를 받으며 정렬된 결과가 원래의 리스트에 영향을 주지 안습니다.

sort()는 인자값으로 리스트를 받지 않으며 원래의 리스트 자체를 정렬합니다.

# sorted()
test_list1 = [3, 1, 5, 4, 2]
answer1 = sorted(test_list1)

print(answer1) # [1, 2, 3, 4, 5]
print(test_list1) # [3, 1, 5, 4, 2]


# sort()
test_list2 = [3, 1, 5, 4, 2]
test_list2.sort()
answer2 = test_list2.sort()

print(test_list2) # [1, 2, 3, 4, 5]
print(answer2) # None

 

 

추가로 공부할 다른 사람의 코드


# 프로그래머스 - 각도기
def solution(angle):
    answer = (angle // 90) * 2 + (angle % 90 > 0) * 1
    return answer
    
# 프로그래머스 - 짝수의 합
def solution(n):
    return 2*(n//2)*((n//2)+1)/2