Python 3. x 아래 목록, 모듈, 집합, 사전 등 작업 에서 자주 사용 되 는 동작

평소에 작업 할 때 몇 가지 데이터 구 조 를 처리 하 는 데 자주 사용 되 는 작업, list, tuple, dict, set
list: 기본 동작: append () 끝 에 요소 추가 (상용) insert (i, item) 지정 한 위치 에 요소 extend () 또는 '+' 목록 을 합 쳐 deli] 색인 i 의 요소 reove () 삭제 지정 요소 i in list 를 삭제 하여 요소 i 가 list 에 있 는 지 판단 합 니 다.지정 한 위치 에서 색인 i 의 요소 index (i) 를 추출 하여 i 의 첫 번 째 일치 하 는 항목 의 색인 위 치 를 찾 습 니 다 clear () 목록 비우 기 (적 게 사용) reverse () 목록 반전 (적 게 사용) l1. count (1) 요소 1 이 목록 l1 에 나타 난 횟수 (자주 사용) len (l1) 계산 열 표 길이 (자주 사용)
절편 (목록 list 뿐만 아니 라 문자열 string 에 도 적용)
l1 = [1,2,3,4,5]
l1[0:3] # [1,2,3]
l1[:3] #      
l1[:] #      
l1[3:] # [4,5]
l1[0:4:2] # [1,3]
l1[::2] #     ,   2 [1,3]
l1[::-1] #      [5,4,3,2,1]

sorted () 정렬, 기본 오름차 순 (reverse = False), 내림차 순 은 매개 변수 reverse = True 를 추가 하여 list 에 여러 개의 작은 list 가 포함 되 어 있 으 면 작은 list 마다 몇 개의 요소 가 있 습 니 다. 특정한 위치의 요소 크기 에 따라 정렬 하려 고 합 니 다.
from operator import itemgetter,attrgetter
#      list      ,      
sorted(l1,key=itemgetter(1),reverse=True)  

업그레이드 작업: 목록 에 있 는 요소 와 sum (a, b, c) 여러 list 사이 에 순서대로 곱 하기 (자주 사용)
#    
import numpy as np
l1 = np.array([a,b,c])
l2 = np.array([d,e,f])
sum_list = list(l1 + l2)
#    
l1 = [a,b,c]
l2 = [d,e,f]
l3 = [x+y for x,y in zip(l1,l2)]

여러 list 요 소 를 순서대로 합 칩 니 다: (자주 사용)
l1 = [1,2,3]
l2 = [4,5,6]
l3 = list(zip(l1,l2)) # [(1,4),(2,5),(3,6)]

하나의 목록 을 몇 개의 작은 목록 으로 나 누 기 (목록 표현 식 의 응용)
l1 = [i for i in range(9)]
n = 3
l2 = [l1[i:i+n] for i in range(0, len(l1),n)] # [[0,1,2],[3,4,5],[6,7,8]]

목록 에 작은 목록 이 있 습 니 다. 현재 작은 목록 의 괄호 를 제거 해 야 합 니 다.
l1=[[0,1,2],[3,4,5],[6,7,8]]
temp = []
for i in l1:
    temp.append(sum(i))
    for j in i:
        temp.append(j)
print(temp) # [3,0,1,2,12,3,4,5,21,6,7,8]

tuple: 원본 그룹 을 만 듭 니 다 (하나의 요소 만 있 을 때 요소 뒤에 쉼표 를 추가 합 니 다. 그렇지 않 으 면 다른 데이터 형식 으로 처 리 됩 니 다):
tup = (1,)
print(type(tup)) # <'tuple'>
tup = (1)
print(type(tup)) # <'int'>

목록 원 그룹, 원 그룹 전 목록 (상용)
tup = (1,2,3)
l1 = list(tup) # [1,2,3]
l2 = [1,2,3]
t1 = tuple(l2) # (1,2,3)

색인, 절편, 원 그룹의 길 이 를 계산 합 니 다. 계수 등 은 list 의 작업 과 마찬가지 로 원 그룹 은 목록 의 증가, 삭제, 변경 작업 이 없습니다. 검사 한 작업 원 그룹의 요소 만 삭제 할 수 없 지만 del 문 구 를 사용 하여 원 그룹 전 체 를 삭제 할 수 있 습 니 다.
set: 무질서 하고 중복 되 지 않 는 집합 으로 빈 집합 만 들 기
s = set()

비교 하 다.
se = {11, 22, 33}
be = {22, 55}
temp1 = se.difference(be)        #  se   ,be       ,    
print(temp1)        #{33, 11}
print(se)        #{33, 11, 22}

temp2 = se.difference_update(be) #  se   ,be       ,   se
print(temp2)        #None
print(se)           #{33, 11},

삭제
se = {11, 22, 33}
se.discard(11)
se.discard(44)  #            
print(se)

se = {11, 22, 33}
se.remove(11)
se.remove(44)  #           
print(se)

se = {11, 22, 33}  #                  
temp = se.pop()
print(temp)  # 33
print(se) # {11, 22}

교제한다
se = {11, 22, 33}
be = {22, 55}

temp1 = se.intersection(be)             #   ,    
print(temp1)  # 22
print(se)  # {11, 22, 33}

temp2 = se.intersection_update(be)      #        
print(temp2)  # None
print(se)  # 22

판 가름
se = {11, 22, 33}
be = {22}

print(se.isdisjoint(be))        #False,         (   FalseTrue)
print(se.issubset(be))          #False,  se   be    
print(se.issuperset(be))        #True,  se   be    

합치다
se = {11, 22, 33}
be = {22}

temp1 = se.symmetric_difference(be)  #      ,    
print(temp1)    #{33, 11}
print(se)       #{33, 11, 22}

temp2 = se.symmetric_difference_update(be)  #      ,     
print(temp2)    #None
print(se)             #{33, 11}

합치다
se = {11, 22, 33}
be = {22,44,55}

temp=se.union(be)   #   ,    
print(se)       #{33, 11, 22}
print(temp)     #{33, 22, 55, 11, 44}

업데이트
se = {11, 22, 33}
be = {22,44,55}

se.update(be)  #  se be  ,      se
print(se)
se.update([66, 77])  #       
print(se)

집합 변환 (list, tuple 등)
se = set(range(4))
li = list(se)
tu = tuple(se)
st = str(se)
print(li,type(li))
print(tu,type(tu))
print(st,type(st))

OUTPUT:
[0, 1, 2, 3] <class 'list'>
(0, 1, 2, 3) <class 'tuple'>
{0, 1, 2, 3} <class 'str'>

dict: key 는 유일 하고 가 변 적 이지 않 은 value 는 임의의 데이터 형식 일 수 있 습 니 다.
dict [key] 사전 에 접근 하 는 값 cmp (dict 1, dict 2) 는 두 사전 요소 인 len (dict 1) 계산 키 의 총 str (dict 1) 출력 사전 에서 인쇄 할 수 있 는 문자열 dict. clear () 를 비교 하여 사전 에 있 는 모든 요소 dict. copy () 를 삭제 하고 사전 의 얕 은 복사 dict. from keys (key, value) 를 되 돌려 새 사전 dict. get (key, default = None) 을 만 듭 니 다.지정 한 key 값 을 되 돌려 줍 니 다. default 값 을 되 돌려 주 는 dict. has key (key) 가 없 으 면 key 가 사전 에 있 으 면 True 로 돌아 갑 니 다. 그렇지 않 으 면 False dict. items () 를 되 돌려 주 고 목록 으로 옮 겨 다 닐 수 있 는 (key, value) 원본 배열 (상용) dict. keys () 를 되 돌려 줍 니 다. 목록 으로 사전 의 모든 key (상용) dict. setdefault (key, default = None) 를 되 돌려 줍 니 다.get 과 유사 합 니 다. key 가 dict 에 존재 하지 않 으 면 key 를 추가 하고 값 을 default dict. update (dict 2) 로 설정 합 니 다.
d1 = {'name':'Frank','age':23, 'gender':'male'}
d2 = {'height':180}
print(list(d1.values())) # ['Frank',23,'male']    
print(list(d1.keys())) # ['name', 'gender', 'age']    
print(list(d1.items())) # [('gender', 'male'), ('age', 23), ('name', 'Frank')]    
d1.update(d2) # {'gender': 'male', 'height': 180, 'name': 'Frank', 'age': 23}
print('age' in d1) # True

좋은 웹페이지 즐겨찾기