Python 3

시연·2024년 7월 14일

2024-07-12

<프로그래머스 입문 문제>
#string1을 선언하세요.
string1 = """다스베이더가 말했다.\n"내가 니 애비다!"\n그 말을 들은 루크는 '깜짝' 놀랐다."""

  • /n 과 """ """(''' ''') 둘 다 줄바꿈의 의미
    print(string1)

  • a를 b로 나눈 몫을 값으로 가지므로
    /연산자가 아닌 //연산자를 사용해야 합니다.
    예를 들어,
    div1 = 6 / 5 # div = 1.2 => 값
    div2 = 6 // 5 # div = 1 => 몫


  • for 문
    for i in range()
    ex) print("== for, 리스트의 모든 요소의 번호를 역순으로 출력 ==")
    for i in range(len(a) - 1, -1, -1): #맨 마지막 숫자,맨 앞 숫자,-1씩 감소
    print(i)

ex) # 문제 : for문으로 1부터 n사이에 존재하는 소수의 합을 반환하는 함수 구현
#소수 판별
def is_prime_number(number):
if number <= 1:
return False

for i in range(2, number):
if number % i == 0:
return False

return True

#1부터 n까지 사이의 모든 소수의 합 반환
def get_1_to_n_prime_sum(n):
s = 0 #소수의합을 저장할 변수

for i in range(1, n + 1):
if is_prime_number(i): #현재 숫자 i가 소수인지 확인
s += i # i가 소수일 경우 i를 더한다

return s

print(get_1_to_n_prime_sum(10))

ex) # 문제 : 리스트에 각 달의 끝 날짜들을 담고, '1월은 31일까지'와 같은 양식으로 출력, len 사용
end_days = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]

for i in range(len(end_days)):
print("{}월은 {}일까지".format(i + 1, end_days[i]))

  • enumerate: 반복문을 사용할 때 인덱스와 값을 동시에 얻을 수 있는 내장 함수.

ex) # 문제 : 리스트에 각 달의 끝 날짜들을 담고, '1월은 31일까지'와 같은 양식으로 출력, enumerate 사용

end_days = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]

for i, end_day in enumerate(end_days):
month = i + 1
print("{}월은 {}일까지".format(month, end_day))

'i'와 'end_day'는 enumerate(end_days)를 통해 리스트 end_days의 각 원소를 순회하면서 사용하는 변수들

  1. i: enumerate() 함수는 리스트의 각 원소와 그 원소의 인덱스를 순회할 때 사용됩니다. i는 각 월의 인덱스를 나타냅니다. i는 0부터 11까지의 값을 가집니다. 이 값을 월을 나타내는 숫자로 사용하기 위해 출력할 때에는 i + 1을 사용하여 1부터 12까지의 월을 출력할 수 있습니다.

  2. end_day: end_days 리스트의 각 원소는 각 월의 마지막 날짜를 나타냅니다. 예를 들어, end_days[0]은 1월의 마지막 날인 31을 나타냅니다. 따라서 end_day 변수에는 각 월의 마지막 날짜가 할당됩니다.

이렇게 i와 end_day를 사용하여 각 월의 인덱스와 그 월의 마지막 날짜를 순회하면서 원하는 형식으로 출력할 수 있습니다.

0개의 댓글