Python에서 목록 인스턴스를 읽어들이고 삭제하는 방법

8398 단어 Pythontech

날과 씨


실례의 배열은 임의의 실례를 검색할 때의 비망록으로 한다.
더 효율적인 방법을 아시는 분은 저에게 알려주세요.

개요


색인에서 제거

  • 대상의list에서 필터로 삭제하고 싶은 실례를 추출
  • list.index(객체 인스턴스)에서 색인 검색
  • list.pop(index)로 삭제 완료
  • # 適当なクラス
    class Person:
        def __init__(self,name,id) -> None:
            self.name = name
            self.id = id
        
        def __repr__(self) -> str:
            return self.name
    
    # Personを入れる配列peopleを定義
    people = []
    
    # peopleへ適当なPersonオブジェクトを代入
    people.append(Person('taro',1))
    people.append(Person('jiro',2))
    people.append(Person('hana',3))
    
    print(people)
    # [taro, jiro, hana]
    
    # jiroを検索
    jiro = list(filter(lambda x:x.id==2,people))[0]
    jiro_idx = people.index(jiro)
    # peopleからjiroを削除(インデックス指定)
    people.pop(jiro_idx)
    
    print(people)
    # [taro,hana]
    
    

    인스턴스 삭제

  • 대상의list에서 필터로 삭제하고 싶은 실례를 추출
  • list.remove(대상 실례)에서 삭제 완료
  • # 適当なクラス
    class Person:
        def __init__(self,name,id) -> None:
            self.name = name
            self.id = id
        
        def __repr__(self) -> str:
            return self.name
    
    # Personを入れる配列peopleを定義
    people = []
    
    # peopleへ適当なPersonオブジェクトを代入
    people.append(Person('taro',1))
    people.append(Person('jiro',2))
    people.append(Person('hana',3))
    
    print(people)
    # [taro, jiro, hana]
    
    # taroを検索
    taro = list(filter(lambda x:x.name=='taro',people))[0]
    # peopleからtaroを削除(インスタンス指定)
    people.remove(taro)
    
    print(people)
    # [jiro, hana]
    
    

    좋은 웹페이지 즐겨찾기