파이썬 주 day04 (집합 및 문자 인코딩) 시작하기

하나의 모음

 1.1 정의

{}은 쉼표로 구분하여 복수의 요소에서 요소를 만족하는 복수의 다음과 같은 세 가지 조건 :
    <1 요소 유형 내에서 설정되어야하는 것은 불변이다.
    <내의 구성 요소 (2)의 순차 컬렉션.
    <반복되지 않는 요소의 세트 내의 3.

 

1.2 형 변환

입술 = 세트 ( 'hellolllll') #의 타입 캐릭터 회전 설정된 
인쇄 (집합 ([1,1,1,1,1,1]) ) #의 자동 재에 세트 
인쇄 (집합 ([1,1,1,1 1,1- [11,222]) # 에러 가변 타입 콜렉션에 존재하는 
잉크 (집합 ({ 'K1' : 2 : 1, 'K2'})) # 키 저장 집합

1.3, 내장 방법

= {friends1 "ZERO", "케빈", "제이슨", "에곤"} 
friends2 = { "JY의", "리키", "제이슨", "에곤"} 
교차점에 : 모두 친구 일반적인 
인쇄 (friends1 & friends2) 
인쇄 (friends1.intersection (friends2)) 
촬영 및 세트 / 모음 : 모두 모든 친구가 
인쇄 (friends2 | friends1) 
인쇄 (friends1.union (friends2)) 
차 집합을 취할 : 테이크 고유 친구 friends1 
인쇄 (friends1을 -friends2) 
인쇄 (friends1.difference (friends2)) 
대칭 차이 : 두 친구의 합이 사용자 (즉, 공통의 친구를 제거)에 고유 한 
인쇄 (friends1 ^ friends2) 
인쇄 (friends1.symmetric_difference (friends2)) 

와 그의 아들 세트 : 포함 관계는 
S1 = {1,2,3,4} 
, S2 = {1,2,3} 
인쇄 (S1> S2) S1 S2 # 분석되어 상위의 
잉크 (s1.issuperset (S2)) # S1이 판단 S2 수퍼 
인쇄 (S1 <S2)의 서브 세트 # S1 S2 분석 
인쇄 (s1.issubset (S2)) # S1은 S2의 부분 집합을 결정
# 포함될 관계가없는 다음 비교 거짓이다 

S1 = {1,2,3} 
, S2 = {1,2,3} 
인쇄 (S1 == S2) # S1과 S2 서로 아들
중복 
1 불변적인 유형의 가중치에 
인쇄 (SET ([1,1,1,1,2])) 

도 2에서, 원래 순서 보장 할 수없는 
L = 1, 'A' , 'B', ' Z ', 1,1,1,2] 
L = 목록 (SET (L)) 
인쇄 (L)  
다른 운영 길이, 운영 회원, 이전과주기 

다른 내장 방법
S = {1,2,3} 
내장 방법을 알 필요가 1 :. 폐기 
. (4) s.discard를 요소에게 # 아무것도 결석을 제거 할 
인쇄 (S) 
s.remove. (4) # 삭제 요소가 오류 존재하지 않는 


알 필요가 구축 방법 2 : 업데이트 
s.update ({1, 3.5}) 
인쇄 (S) 

필요가 내장 갖도록 방법 3 :. POP 
RES = s.pop () 
인쇄 (RES) 

에 내장 된 것으로 방법 필요 4 :. 추가 
S.을 추가. (4) 
인쇄 (S)이 



남아있는 방법은 모두 이해 
된 RE = s.isdisjoint 공통 부 ({3,4,5,6}) # 세트 개의 완전히 독립적 더 참을 리턴이없는 
인쇄 (RES)을 

알아 
s.difference_update을 ({4, 5}) = S # s.difference ({4, 5}) 
인쇄 (S)

2 문자 인코딩

ASCII 테이블 :
1 만 영어 문자열 지원
2, 8 비트 이진수는 영어 문자열에 대응

GBK 테이블 :
1, 영문자, 한자 지원
2 8 비트 (8 비트 = 1Bytes) 영어 스트링에 대응하는 이진수
이진수 문자열 중국어 16 비트 (16 비트 = 2 바이트)를 대응

유니 (통합 메모리 유니 코드) :
(1)는 대응 문자 나라
      와 나라 문자 간의 대응 관계를 갖는
중국어 문자열 2, 16 비트 (16 비트 = 2 바이트) 진수 상당
      4 바이트, 8Bytes를 사용하는 개별 희귀을

 

오래된 문자 인코딩은 유니 코드로 변환 할 수 있지만, Huzhuan을 유니 코드 수 없습니다

 

UTF-8 :
  영어 -> 1Bytes의
  문자 -> 3Bytes

결론 :
1, 유니 코드를 사용하여 메모리 고정, 우리는 형식으로 디스크에 그것을 바꿀 수있는 것은
영어 + 중국어 문자 - "유니 코드를은"GBK
영어 + 일본어 - "유니 코드를"변화는-JIS
팔레 문자를 "-unicode-"UTF-8

2, 깨진 텍스트 파일 액세스 문제가
혼란에 존재 :이 솔루션은, 인코딩 형식은 용지 형식 문자열을 지원하기 위해 설정해야합니다입니다
혼란 걸릴 :의 해결책이를, 어떤 파일 하드 디스크 메모리와 같은 형식을 인코딩, 그것은해야 어떤 형식을 인코딩하는 메모리로 읽어


3, 파이썬 인터프리터는 기본 인코딩 파일 읽어
python3 기본값 :. UTF 8
python2 기본값 : ASCII를

기본 인코딩을 수정하는 파일 헤더를 지정합니다 :
첫 번째 줄 평 파일 쓰기 :
#coding을 : GBK를

4, 두 단계가 실행 파이썬 프로그램하기 전에 핵심 규칙을 왜곡되지 않도록하기 :
지정 파일 헤더
원래 사용 된 하드 디스크에 저장 인코딩 형식의 파일 : # 코딩


. 5,
STR 유니 코드 포맷으로 직접 기탁 python3 기본 유형으로, 모든 경우에 왜곡되지
왜곡 python2 STR의 유형을 보장하는 것은 아니다
'에서'X = U


6
python2 문자열 해석기는 두 종류 가지고 STR 유니
# STR 타입
X = 가변 메모리 공간에 저장되어있는 헤더의 인코딩 형식 값으로 지정된 # 문자열 값 '에서'
유니 타입 #
X = U ' '# 강제 유니 코드로 저장

  

 

  

추천

출처www.cnblogs.com/BoyGc/p/12470765.html