[Programmers] - 자릿수 더하기
1. Problem 📃
https://programmers.co.kr/learn/courses/30/lessons/12931
이번 문제는, 자연수 N이 주어졌을 때 N의 각 자릿수의 합을 구해서 반환하는 함수를 만드는 문제입니다.
2. Logic 👨🏫
- 입력 받은 자연수 N을 list 형태로 변환해 줍니다.
- sum 함수를 이용해 결과를 구하고 반환해 줍니다.
3. Code 💻
1. 내가 푼 코드
def solution(n):
n_list = list(str(n))
answer = [int(i) for i in n_list]
return sum(answer)
2. 다른 분이 푼 코드
def sum_digit(number):
return sum(map(int,str(number)))
# 아래는 테스트로 출력해 보기 위한 코드입니다.
print("결과 : {}".format(sum_digit(123)));
4. Feedback 📚
4.1 List 형 변환
4.1.1. map 이용하기
- 형식: map(변환 함수, iterable(반복 가능한 데이터 ex). 리스트, 튜플 등))
- map함수의 인자로 들어가는 함수는 람다를 쓰면 편하다.
- 리턴 타입: iterator (map object)
originalList = ['2', '4', '6', '8', '10', '12']
intList = list(map(int, originalList))
print(intList)
# 출력 결과: [2, 4, 6, 8, 10, 12]
4.1.2 List Comprehension
# exam 1
originalList = ['2', '4', '6', '8', '10', '12']
intList1 = [int(x) for x in originalList]
intList2 = [x for x in originalList]
print(intList1) # 출력 결과: [2, 4, 6, 8, 10, 12]
print(intList2) # 출력 결과: ['2', '4', '6', '8', '10', '12']
# exam 2
ex1). [i*i for i in range(1, 5)]
ex2). [i*i for i in range(1, 5) if i % 2 == 0]
ex1). [1, 4, 9, 16] # 출력 결과
ex2). [4, 16] # 출력 결과
# exam 3
[(x, y) for x in range(3) for y in range(3)]
[(0, 0), (0, 1), (0, 2), (1, 0), (1, 1), (1, 2), (2, 0), (2, 1), (2, 2)] # 출력 결과
[x for x in originalList + (Etc)] 이 쓰임을 알면 앞으로도 요기나게 쓸 수 있을것이다!
Author And Source
이 문제에 관하여([Programmers] - 자릿수 더하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://velog.io/@odh0112/Programmers-자릿수-더하기
저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
- 입력 받은 자연수 N을 list 형태로 변환해 줍니다.
- sum 함수를 이용해 결과를 구하고 반환해 줍니다.
1. 내가 푼 코드
def solution(n):
n_list = list(str(n))
answer = [int(i) for i in n_list]
return sum(answer)
2. 다른 분이 푼 코드
def sum_digit(number):
return sum(map(int,str(number)))
# 아래는 테스트로 출력해 보기 위한 코드입니다.
print("결과 : {}".format(sum_digit(123)));
4. Feedback 📚
4.1 List 형 변환
4.1.1. map 이용하기
- 형식: map(변환 함수, iterable(반복 가능한 데이터 ex). 리스트, 튜플 등))
- map함수의 인자로 들어가는 함수는 람다를 쓰면 편하다.
- 리턴 타입: iterator (map object)
originalList = ['2', '4', '6', '8', '10', '12']
intList = list(map(int, originalList))
print(intList)
# 출력 결과: [2, 4, 6, 8, 10, 12]
4.1.2 List Comprehension
# exam 1
originalList = ['2', '4', '6', '8', '10', '12']
intList1 = [int(x) for x in originalList]
intList2 = [x for x in originalList]
print(intList1) # 출력 결과: [2, 4, 6, 8, 10, 12]
print(intList2) # 출력 결과: ['2', '4', '6', '8', '10', '12']
# exam 2
ex1). [i*i for i in range(1, 5)]
ex2). [i*i for i in range(1, 5) if i % 2 == 0]
ex1). [1, 4, 9, 16] # 출력 결과
ex2). [4, 16] # 출력 결과
# exam 3
[(x, y) for x in range(3) for y in range(3)]
[(0, 0), (0, 1), (0, 2), (1, 0), (1, 1), (1, 2), (2, 0), (2, 1), (2, 2)] # 출력 결과
[x for x in originalList + (Etc)] 이 쓰임을 알면 앞으로도 요기나게 쓸 수 있을것이다!
Author And Source
이 문제에 관하여([Programmers] - 자릿수 더하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://velog.io/@odh0112/Programmers-자릿수-더하기
저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
- 형식: map(변환 함수, iterable(반복 가능한 데이터 ex). 리스트, 튜플 등))
- map함수의 인자로 들어가는 함수는 람다를 쓰면 편하다.
- 리턴 타입: iterator (map object)
originalList = ['2', '4', '6', '8', '10', '12']
intList = list(map(int, originalList))
print(intList)
# 출력 결과: [2, 4, 6, 8, 10, 12]
# exam 1
originalList = ['2', '4', '6', '8', '10', '12']
intList1 = [int(x) for x in originalList]
intList2 = [x for x in originalList]
print(intList1) # 출력 결과: [2, 4, 6, 8, 10, 12]
print(intList2) # 출력 결과: ['2', '4', '6', '8', '10', '12']
# exam 2
ex1). [i*i for i in range(1, 5)]
ex2). [i*i for i in range(1, 5) if i % 2 == 0]
ex1). [1, 4, 9, 16] # 출력 결과
ex2). [4, 16] # 출력 결과
# exam 3
[(x, y) for x in range(3) for y in range(3)]
[(0, 0), (0, 1), (0, 2), (1, 0), (1, 1), (1, 2), (2, 0), (2, 1), (2, 2)] # 출력 결과
[x for x in originalList + (Etc)] 이 쓰임을 알면 앞으로도 요기나게 쓸 수 있을것이다!
Author And Source
이 문제에 관하여([Programmers] - 자릿수 더하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@odh0112/Programmers-자릿수-더하기저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)