복붙노트

[PYTHON] 항목을 목록 내부로 이동 하시겠습니까?

PYTHON

항목을 목록 내부로 이동 하시겠습니까?

파이썬에서는 목록에서 명확한 인덱스로 항목을 어떻게 이동합니까?

해결법

  1. ==============================

    1.목록의 삽입 메소드를 사용하십시오.

    목록의 삽입 메소드를 사용하십시오.

    l = list(...)
    l.insert(index, item)
    

    또는 슬라이스 표기법을 사용할 수 있습니다.

    l[index:index] = [item]
    

    이미 목록에있는 항목을 지정된 위치로 이동하려면 삭제하고 새 위치에 삽입해야합니다.

    l.insert(newindex, l.pop(oldindex))
    
  2. ==============================

    2.약간 짧은 해결책은 항목을 끝까지 이동시키는 것 뿐이며 어디에도 없습니다.

    약간 짧은 해결책은 항목을 끝까지 이동시키는 것 뿐이며 어디에도 없습니다.

    l += [l.pop(0)]
    

    예 :

    >>> l = [1,2,3,4,5]
    >>> l += [l.pop(0)]
    >>> l
    [2, 3, 4, 5, 1]
    
  3. ==============================

    3.항목의 위치를 ​​모를 경우 먼저 색인을 찾아야합니다.

    항목의 위치를 ​​모를 경우 먼저 색인을 찾아야합니다.

    old_index = list1.index(item)
    

    다음 이동 :

    list1.insert(new_index, list1.pop(old_index))
    

    또는 IMHO 더 깨끗한 방법 :

    try:
      list1.remove(item)
      list1.insert(new_index, item)
    except ValueError:
      pass
    
  4. ==============================

    4.솔루션은 매우 간단하지만 원래 위치의 색인과 새 위치의 색인을 알아야합니다.

    솔루션은 매우 간단하지만 원래 위치의 색인과 새 위치의 색인을 알아야합니다.

    list1[index1],list1[index2]=list1[index2],list1[index1]
    
  5. from https://stackoverflow.com/questions/3173154/move-an-item-inside-a-list by cc-by-sa and MIT license