Python 풀 스택 엔지니어 연구 노트: 기본 문법(1)

1.str 내장 함수

수업 찾기

str.find

str.index

이들은 모두 str에 특정 문자열이 존재하는지 여부를 찾는 데 사용됩니다.

차이점: str.find를 찾을 수 없으면 반환 값은 -1이고, str.index를 찾을 수 없으면 ValueError가 반환되고 프로그램은 오류를 보고합니다.

str.rfind/str.lfind: 오른쪽에서 검색하고 왼쪽에서 검색합니다.

유형 판단 등급

글자를 결정하세요

str.isalpha

판사 번호(가능하면 사용하지 말고 일반 규칙을 사용하여 번호를 찾으세요)

str.isdigit:

str.숫자

str.isdecimal

대소문자 구분(한자는 대소문자의 개념이 없음)

str.islower/str.isupper

내용판단 수업

startwith/endswith: xxx로 시작하거나 끝나는지 여부

운영 클래스

str.format: 형식 지정, print("{}".format(a))

str.strip: 기본적으로 lstrip/rstrip을 포함하여 문자열 양쪽의 공백이 삭제됩니다.

str.strip('a')는 단일 문자가 아닌 전체 문자열인 'a'를 삭제하도록 지정할 수 있습니다.

str.join: 문자열 연결, s1 = '$', s1.join(ss), ss는 목록입니다. 이는 ss의 각 요소를 s1의 문자와 연결한다는 의미입니다.

 

2.Python 내장 데이터 유형

목록

L1=[1,2,3,"HHH"]는 유형에 대한 제한 없이 직접 생성됩니다. L1=list(s)는 s 문자열을 단일 문자로 분할하여 목록을 형성합니다.

슬라이싱 작업

L2 = L1[0:4], 왼쪽에는 포함, 오른쪽에는 포함되지 않음; L2는 id 쿼리를 통해 확인할 수 있는 새 목록을 생성하며 L2는 새 것입니다.

L2 = L1[:4]: 처음부터

L2 = L1[2:]: 끝까지

L1[::2]: 성장 단계 크기는 2이고 단계 크기는 음수입니다. 이는 순서가 오른쪽에서 왼쪽임을 나타냅니다(-1이 오른쪽의 첫 번째임).

튜플

a = (1,2,3)

리 = [1,2,3,"zlh"]

tu = 튜플(li)

목록 기능과 유사

질서 있는

액세스할 수 있지만 수정할 수는 없습니다.

모든 유형의 요소

튜플의 특별한 사용법

a = 100

b = "즐"

a, b 값은 위치를 바꿉니다: a, b = b, Python 고유

세트

sc = {1,2,3,5,6,1,2}

무질서

중복된 요소가 없습니다.

for 루프: sd = {i**2 for i in sc} 출력을 제곱합니다.

차이, 합집합, 교집합 등의 수학 연산을 수행할 수 있습니다.

고정 세트: sb =frozenset(sc). 이는 세트와 크게 다르지 않으며 쓰기 작업 없이는 수정할 수 없습니다.

dic = {'제임스':98,'작업':78}

핵심 가치

dic.items(): 키와 값을 동시에 반복합니다.

내장 기능

help/type/id/print/len/max/min/count/index/clear/remove/discard等

id는 값이 같은지 여부가 아닌 동일한 메모리를 가리키는지 여부를 확인하는 데 사용할 수 있습니다.

제거/폐기: 세트의 요소를 모두 삭제합니다. 삭제할 항목이 없으면 제거는 오류를 보고합니다. 삭제는 삭제를 무시하고 삭제를 계속합니다.

 

3. 수업

대괄호 안에 self가 없는 클래스 메서드 정의는 인스턴스의 콘텐츠에 액세스할 수 없습니다. 즉, self.xxx를 사용할 수 없습니다.

수업 학생:

이름 = zlh

나이 = 20

데프 sos():

반환 없음

클래스 메소드는 클래스의 변수를 호출할 수 있습니다.

print("{},{}".format(Student.name, __class__.age)) # 클래스를 나타내는 두 가지 형식 모두 허용됩니다.

건설자

클래스가 인스턴스화되면 기본 초기화 작업을 수행합니다. 자동으로 실행되는 첫 번째 함수와 클래스의 형식 매개변수는 생성자에서 정의됩니다.

def __init__(self): # self가 있어야 합니다.

def __init__(self, a, b): a, b는 클래스의 매개변수이며 실제 매개변수는 인스턴스화 중에 제공되어야 합니다.

객체지향

상속하다

캡슐화

다형성

상속하다

모든 클래스에는 상위 클래스가 있어야 합니다.

하위 클래스는 여러 상위 클래스를 가질 수 있습니다.

issubclass(a,b): a가 b의 하위 클래스인지 확인합니다.

super().run(): 하위 클래스에서 상위 클래스의 메서드를 직접 호출할 수 있습니다.

캡슐화

두 가지 수준의 클래스 캡슐화

캡슐화의 첫 번째 수준: 클래스는 그 자체로 일종의 캡슐화인 컨테이너입니다.

캡슐화의 두 번째 수준: 클래스에 정의된 개인 속성은 클래스 내부에서만 사용되며 외부에서는 액세스할 수 없습니다.

규칙 이중 밑줄 "__"로 시작하는 모든 이름은 클래스 내의 전용 속성이어야 하며 외부에서 액세스할 수 없습니다. (실제로 앞에 "_class name"을 추가하여 접근할 수도 있습니다)

다형성

서로 다른 클래스에 의해 인스턴스화된 개체에서 동일한 메서드를 호출하면 구현 프로세스가 달라집니다.

Guess you like

Origin blog.csdn.net/qq_32301683/article/details/103556523