파이썬 도로 (컬렉션, 깊이, 복사, 기본 데이터 보충)

컬렉션 : 데이터 저장 용기 튜플 유사한리스트가 수정 될 수없는 다른, 반복 할 수없는 불규칙 배열이다.

컬렉션 만들기 1. :

(1) = {.set1 '애비', '에릭'}

결과 : { '에릭', '애비'}

(2) = .set2 집합 ({ '애비', '에릭'})

결과 : { '애비', '에릭'}

 

2. 증가

SET1 = { '애비', '에릭', '알란', '데비', '스카이'}

(1) ( '서쪽') .set1.add

결과 : { '서쪽', '애비', '에릭', '앨런', '데비', '스카이'}

(2) .set1.update ( 'ABC') # 새로운 반복

결과 : { '웨스트', '애비', 'A', '에릭', '알란', 'C', '데비', 'B', '스카이를'}

 

3. 삭제

SET1 = { '애비', '에릭', '알란', '데비', '스카이'}

(1) .set1.remove ( '애비') # 지정된 삭제

결과 : { '에릭', '앨런', '데비', '스카이'}

(2) .set1.pop () # 임의 삭제

결과 : { '애비', '에릭', '앨런', '스카이'}

(3) 취소 .SET () # 빈 콜렉션

결과 : 세트 ()

(4) .del SET1 # 메모리에서 컬렉션을 삭제

결과 : 이름 'SET1이'정의되지 않은

 

4. 관계 테스트 :

SET1 = {1,2,3,4,5}

SET2 = {4,5,6,7,8}

. (1) 교차 :

1 : 잉크 (SET1 & SET2)

2 : 인쇄 (set1.intersection (설정 2)

결과 : {4,5}

(2). 연합

1 : 인쇄 (SET1 | 설정 2)

2 : 인쇄 (set1.union (설정 2)

결과 : {1, 2, 3, 4, 5, 6, 7, 8}

(3) 안티 교차로

1 : 잉크 (SET1 ^ SET2)

2 : 인쇄 (set1.symmetric_difference (설정 2)

결과 : {1, 2, 3, 6, 7, 8}

(4) 차 전류

1 : 인쇄 (SET1 - 설정 2)

2 : 인쇄 (set1.difference (설정 2)

결과 : {1, 2, 3}

3.print (SET2-SET1)

4.print (set2.difference (SET1)

결과 : {8, 6, 7}

(5) 아이 집

SET1 = {1,2,3}

SET2} = {1,2,3,4,5,6

인쇄 (SET1 <SET2)

인쇄 (set1.issubset (설정 2))

결과 : 사실을

(5) 상위

인쇄 (SET2> SET1)

인쇄 (set2.issuperset (SET1))

결과 : 사실을

(6) 동결 불변 데이터 형식

SET1 = {1,2,3}

SET3 = frozenset (SET1)

결과 : frozenset을 ({1, 2, 3})

 

인터뷰 질문 : 목록의 중복 제거

L1 = 1,1,2,3,4,4,3,2,1,5,5]

SET1 = 세트 (L1)

L2 = 목록 (SET1)

인쇄 (L2)

 

둘째, 복사 깊이

1. 할당 연산자

L1 = [1,2,3]

L2 = L1

l1.append (666)

인쇄 (L2)

인쇄 (ID (L1))

인쇄 (ID (L2))

결과:

[1, 2, 3, 666]

2724735509128

2724735509128

 

2. 얕은 복사

test01 :

L1 = [1,2,3]

L2 = l1.copy ()

l1.append (666)

인쇄 (L2)

결과 : [1, 2, 3]

 

test02 :

L1 = 1,2,3, [22]

L2 = l1.copy ()

l1.append (666)

인쇄 (L1, L2)

결과 : [1, 2, 3, [22], 666 [1, 2, 3, [22]

 

test03 :

L1 = 1,2,3, [22]

L2 = l1.copy ()

L1 [-1]으로 .Append ( '애비')

인쇄 (L1, L2)

인쇄 (ID (L1))

인쇄 (ID (L2))

인쇄 (ID (L1 [-1]))

인쇄 (ID (L2 [-1]))

결과:

[1, 2, 3, [22 '애비'] [1, 2, 3, [22 '애비']
2586054582984
2586055807688
2586054582920
2586054582920

 

3. 전체 복사

모듈을 복사 할 필요

수입 사본

L1 = 1,2,3, [22]

L2 = copy.deepcopy (L1)

l1.append (666)

인쇄 (L2)

결과 : [1, 2, 3, [22]

깊이 요약 사본 : 독립적 인 존재의 첫 번째 레이어의 모든 복사, 얕은 복사 사본, 제 2 층은 깊은 사본 복사본이 모든 계층과 독립적 인 존재를 복사하는 것이 일반적 오브젝트 있습니다.

 

인터뷰 질문 :

L1 = 1,2,3, [22,33]

L2 = L1 [:]

l1.append (666)

인쇄 (L2)

결과 : [1, 2, 3, [22, 33]

요약 : 얕은 복사에 속하는 부분

 

셋째, 기본 데이터 보충

1. 데이터 형식 변환

# STR ---> 목록

S1 = '애비 에릭 서쪽'

L1 = s1.split ()

인쇄 (L1)

결과 : [ '애비', '에릭', '서쪽']

 

L1 = '애비', '에릭', '웨스트']

S2 = '.join (L1)

인쇄 (S2)

결과 : 애비 에릭 서쪽

 

# 튜플 <---> 목록

L1 = [1,2,3]

TU1 = 튜플 (L1)

인쇄 (TU1)

결과 : (1, 2, 3)

TU2 = (0,2,3)

L1 = 목록 (TU2)

인쇄 (L1)

결과 : [0, 2, 3]

 

# DIC ---> 목록

dic1 = { '이름': '알렉스', '나이': 1000}

L1 = 목록 (dic1)

인쇄 (L1)

결과 : [ '이름', '나이']

 

부울 변환

0 "[] () {} 집합 () ---> BOOL : FALSE

 

네, 열거 열거

사전 사용법 :

dic01 = { '키 1': '값 1', '키 2': '값 2', 'K3': 'V3', '이름': '애비'}

1. 플로우에 열거 I (dic01,1) # 1 시작 비트 인덱스

  인쇄 (I)

결과:

(1 'KEY1')
(2 '키 2')
(3 ', K3')
(4, '이름')

 

2.for A, B에 열거 (dic01,1를)

  프린트 (a, b)

결과:

1 KEY1
2 키 2
3 K3
4 명

 

목록 : LI01 = [1,2,3,4,5,6,7,8]

열거에서 I (li01,1) 대 :

  인쇄 (I)

결과:

(1,1)
(2,2)
(3,3)
(4,4)
(5,5)
(6,6)
(7, 7)
(8, 8)

 

A에 대한, B에 열거 (li01,1)

  프린트 (a, b)

결과:

1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8

 

추천

출처www.cnblogs.com/mingxi/p/12321936.html