ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [코딩도장] day10. 리스트 map, 튜플
    IT/파이썬 2020. 8. 23. 00:04

    ■ 들어가기

    - 파이썬 코딩 도장 (남재윤/길벗). 을 공부하며 정리하는 블로그


    ▶ Unit22. 리스트와 튜플 응용하기

         - 22.1 리스트 조작하기

         - 22.2 리스트의 할당과 복사 알아보기

         - 22.3 반복문으로 리스트의 요소를 모두 출력하기

         - 22.4 리스트의 가장 작은 수, 가장 큰 수, 합계 구하기

         - 22.5 리스트 표현식 사용하기

         - 22.6 리스트에 map 사용하기

         - 22.7 튜플 응용하기

     

    >> 22.6 리스트에 map 사용하기 <<

    - map은 리스트의 요소를 지정된 함수로 처리해주는 함수

    - map은 원본 리스트를 변경하지 않고 새 리스트를 생성

    - 사용법

    • list(map(함수, 리스트))
    • tuple(map(함수, 리스트))
    >>> a = [1.1, 2.2, 3.3, 4.4]
    >>> a
    [1.1, 2.2, 3.3, 4.4]
    >>> int(1.1)
    1
    >>> b = [int(i) for i in a]     # 새로운 객체를 정수로 생성
    >>> b
    [1, 2, 3, 4]
    >>> for i in a :
    a[i] = int(a[i])


    Traceback (most recent call last):
      File "<pyshell#322>", line 2, in <module>
        a[i] = int(a[i])
    TypeError: list indices must be integers or slices, not float
    >>> len(a)
    4
    >>> for i in range(len(a)) :
    a[i] = int(a[i])


    >>> a
    [1, 2, 3, 4]
    >>> a = [1.1, 2.2, 3.3, 4.4]
    >>> a = list(map(int, a)) # 리스트 a의 모든 요소를 int를 사용해서 변환 후, list를 사용해서 map의 결과를 다시 리스트로 생성
    >>> a
    [1, 2, 3, 4]

    -> for 반복문 내 시퀀스 객체는 실수가 아닌 정수만 지정되어야 하나보다....

     


    >> 22.7 튜플 응용하기 <<

    - 튜플은 리스트와 달리 내용 변경 불가

    - 내용을 변경하는 append와 같은 메서드 사용 불가, 요소의 정보 구하는 메서드만 사용 가능함

    1. 튜플에서 특정 값의 인덱스 구하기

    - 사용법: index(값)

    - 같은 값이 여러 개 있는 경우, 처음 찾은 인덱스를 구함 ( 가장 작은 인덱스 )

    >>> a = (38, 21, 53, 62, 19, 53)
    >>> a.index(53)
    2

    2. 특정 값의 개수 구하기

    - 사용법: count(값)

    - 미존재하는 값을 찾을 경우 0개 return

    >>> a = (10, 20, 30, 15, 20, 40)
    >>> a.count(20)
    2
    >>> a.count(100)
    0

    3. for 반복문으로 요소 출력

    - 리스트의 방식과 동일

    >>> a = (10, 20, 30, 15, 20, 40)
    >>> a.count(20)
    2
    >>> a.count(100)
    0

    4. 튜플 표현식 사용하기

    - 리스트 표현식 방식과 동일

    - 사용법: tuple(식 for 변수 in 리스트 if 조건식)

    >>> a = tuple(i for i in range(10) if i%2 == 0)
    >>> a
    (0, 2, 4, 6, 8)

    5. 튜플에 map 사용하기

    - 리스트의 방식과 동일

    >>> a = (1.1, 2.2, 3.3, 4.4)
    >>> a
    (1.1, 2.2, 3.3, 4.4)
    >>> a = tuple(map(int, a))
    >>> a
    (1, 2, 3, 4)

    6. 튜플에서 가장 작은 수, 가장 큰 수, 합계 구하기

    - 가장 작은 수, 가장 큰 수 : min, max 함수 사용

    - 합계 : sum 함수 사용

    >>> a = (38, 21, 53, 62, 19)
    >>> min(a)
    19
    >>> max(a)
    62
    >>> sum(a)
    193

     

    댓글

Designed by Tistory.