리스트로 이루어진 수열에서 정해진 부분만 합을 구하려고 할 떄,
나는 슬라이싱을 생각 하지 못하고 그냥 반복문으로 돌리곤 했다.
반복문을 사용해도 되긴 하겠지만, 자꾸 머리속에서 인덱스가 헷갈려서 다른 방법이 없나 찾아봤다.
해답은, 슬라이싱 기능과 sum 메서드를 이용하는 것이었다.
lst = [10, 20, 30, 40, 50]
total1 = sum(lst[1:])
total2 = sum(lst[2:])
total3 = sum(lst[3:])
print("total 1 = ",total1)
print("total 2 = ",total2)
print("total 3 = ",total3)
total 1 = 140
total 2 = 120
total 3 = 90
위의 코드처럼 sum 메서드에 어디부터 어디까지 슬라이싱을 하겠다. 정해주면 sum 메서드에서
더해서 나타내 준다.
문제 좀 풀면서 더 익숙해져야 할 것 같다.
'언어 > python3' 카테고리의 다른 글
[파이썬/python] 리스트 안에있는 특정 원소의 개수 (1) | 2020.03.19 |
---|---|
파이썬 | 문자를 아스키코드로 바꾸기 (0) | 2020.03.16 |
파이썬 | 소수점 나타내기 (0) | 2020.03.16 |
파이썬 | 리스트를 리스트에 복사할 때, 주의할 점 (0) | 2020.03.15 |
파이썬 | 리스트 생성, 생성과 동시에 크기지정 (0) | 2020.03.15 |
댓글