programmers- lv.1 (내적)

이예송·2023년 7월 19일

PS

목록 보기
48/97

문제링크: 내적

✍🏻 Information

content
언어python
난이도⭐️
풀이시간1분
제출횟수1
인터넷검색유무no




🍒 My Code

def solution(a, b):
    answer = 0
    for i in range(len(a)):
        answer+=a[i]*b[i]
    return answer




💡 What I learned

  • 좋다고 생각한 풀이
def solution(a, b):
    return sum([x*y for x, y in zip(a,b)])
  • zip() :여러 개의 순회 가능한(iterable) 객체를 인자로 받고, 각 객체가 담고 있는 원소를 튜플의 형태로 차례로 접근할 수 있는 반복자(iterator)를 반환
    • 주의할점: zip() 함수로 넘기는 인자의 길이가 다를 때가장 짧은 인자를 기준으로 데이터가 엮이기 때문에 나머지는 버려짐
numbers = [1, 2, 3]
letters = ["A", "B", "C"]
for pair in zip(numbers, letters):
     print(pair)

(1, 'A')
(2, 'B')
(3, 'C')
for number, upper, lower in zip("12345", "ABCDE", "abcde"):
     print(number, upper, lower)

1 A a
2 B b
3 C c
4 D d
5 E e

-> 여러 그룹의 데이터를 루프를 한 번만 돌면서 처리할 수 ㅇ

dict(zip(["year", "month", "date"], [2001, 1, 31]))
{'year': 2001, 'month': 1, 'date': 31}

-> zip으로 사전(dictionary) 만들기

0개의 댓글