Notas de estudo do engenheiro full-stack Python: gramática básica (1)

Função integrada 1.str

Encontrar turma

str.find

str.index

Todos eles são usados ​​para descobrir se uma determinada string existe em str.

A diferença: se str.find não for encontrado, o valor de retorno será -1, se str.index não for encontrado, um ValueError será retornado e o programa reportará um erro.

str.rfind/str.lfind: Pesquise pela direita, pesquise pela esquerda.

Tipo de classe de julgamento

Determine as letras

str.isalpha

Julgue os números (não use se puder, use regras regulares para encontrar números)

str.isdigit:

str.isnumérico

str.isdecimal

Determinar caso (caracteres chineses não têm conceito de caso)

str.islower/str.isupper

Aula de julgamento de conteúdo

começa com/termina com: se começa ou termina com xxx

Classe de operação

str.format: formatação, print("{}".format(a))

str.strip: Por padrão, os espaços em ambos os lados da string são excluídos, incluindo lstrip/rstrip.

str.strip('a') pode especificar a exclusão de 'a', não um único caractere, mas a string inteira.

str.join: Splice strings, s1 = '$', s1.join(ss), ss é uma lista, o significado é unir cada elemento em ss com os caracteres de s1.

 

2. Tipos de dados integrados do Python

Lista

L1=[1,2,3,"HHH"] é criado diretamente sem qualquer restrição de tipo; L1=list(s) dividirá a string s em caracteres únicos e formará uma lista.

Operação de fatiamento

L2 = L1[0:4], esquerda inclui, direita não inclui; L2 gera uma nova lista, que pode ser verificada através de consulta de id, L2 é nova.

L2 = L1[:4]: desde o início

L2 = L1[2:]: até o fim

L1[::2]: O tamanho do passo de crescimento é 2 e o tamanho do passo é um número negativo, indicando que a ordem é da direita para a esquerda (-1 é o primeiro à direita)

Tupla

uma = (1,2,3)

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

tu = tupla(li)

Semelhante ao recurso Lista

ordenadamente

Pode ser acessado, mas não pode ser modificado

Elementos de qualquer tipo

Uso especial de tupla

uma = 100

b = "zlh"

a, b valores trocam posições: a, b = b, a exclusivo para python

Definir

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

transtorno

Não há elementos duplicados

for loop: sd = {i**2 for i in sc} eleve a saída ao quadrado

Você pode realizar operações matemáticas, como diferença, união, interseção, etc.

Conjunto congelado: sb = frozenset(sc), que não é muito diferente do conjunto e não pode ser modificado sem operações de escrita.

Dados

dic = {'james':98,'trabalho':78}

valor chave

dic.items(): itera chaves e valores simultaneamente

funções integradas

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

O id pode ser usado para verificar se aponta para a mesma memória, e não se os valores são iguais.

remover/descartar: ambos excluem elementos do conjunto. Remove reportará um erro se não houver nada para excluir. Disacard irá ignorá-lo e continuará se não houver exclusão.

 

3. Classe

A definição de um método de classe, sem self entre colchetes, não pode acessar o conteúdo da instância, ou seja, self.xxx não pode ser utilizado.

aluno da turma:

nome = zlh

idade = 20

def sos():

retornar Nenhum

Os métodos de classe podem chamar variáveis ​​da classe

print("{},{}".format(Student.name, __class__.age)) # Ambas as formas de representação de classes são aceitáveis.

Construtor

Quando uma classe é instanciada, ela executa operações básicas de inicialização. A primeira função que é executada automaticamente e os parâmetros formais da classe são definidos no construtor.

def __init__(self): # Deve haver self

def __init__(self, a, b): a, b são parâmetros da classe e os parâmetros reais devem ser fornecidos durante a instanciação.

Orientado a Objeto

herdar

encapsulamento

Polimorfismo

herdar

Todas as classes devem ter uma classe pai

As subclasses podem ter várias classes pai

issubclass(a,b): Verifica se a é uma subclasse de b

super().run(): Você pode chamar diretamente o método da classe pai na subclasse

encapsulamento

Dois níveis de encapsulamento de classe

O primeiro nível de encapsulamento: uma classe é um contêiner, que por si só é uma espécie de encapsulamento

O segundo nível de encapsulamento: atributos privados definidos na classe são usados ​​apenas dentro da classe e não podem ser acessados ​​externamente.

Convenção: Qualquer nome que comece com um sublinhado duplo "__" deve ser uma propriedade privada dentro da classe e não pode ser acessado de fora. (Na verdade, também pode ser acessado adicionando "_class name" na frente)

Polimorfismo

Chamar o mesmo método em objetos instanciados por classes diferentes possui processos de implementação diferentes.

Acho que você gosta

Origin blog.csdn.net/qq_32301683/article/details/103556523
Recomendado
Clasificación