O resumo da gramática básica do python (super abrangente e detalhado, você pode começar a praticar o python em apenas uma semana), continuará sendo atualizado


Pontos de conhecimento a serem observados no primeiro dia do programa orientado a objetos :

Variável: Um símbolo de espaço reservado usado para salvar e representar dados. As variáveis ​​são representadas por identificadores. O processo de associação de identificadores é chamado de nomeação. Tipo de dados: O formato de dados
para os programas de computador entenderem.
O índice da string adota a forma de “[ ]”, preste atenção Representação do fatiamento e tamanho do passo
A entrada da função de entrada retorna uma string (pressione Enter uma vez para indicar o final desta entrada) e, ao participar da operação, preste atenção para remover as aspas da string retornada, e você pode inserir o texto do prompt na função , a função de saída print é uma função que envia o resultado para o console na forma de caracteres. Um par de aspas do tipo string é usado apenas dentro do programa e a saída tem sem aspas. Adicione um parâmetro após print (end = "") e saída sem quebra de linha (python——print output é automaticamente agrupado); a função da função de avaliação eval é remover a aspa mais externa do parâmetro e execute a função da instrução restante. Observe que o uso do mecanismo de slot "{}" controla o formato de saída. Um parâmetro da função de formato é Correspondente a um slot Há dois pontos no final da linha
onde cada palavra reservada está localizado: isso faz parte da gramática, não se esqueça, preste atenção aos colchetes devem estar em pares
python suporta caracteres chineses, isso deve ser usado, lembre-se:
ecologia da computação Python = biblioteca padrão + biblioteca de terceiros, biblioteca padrão Computação Python ecology = biblioteca padrão + biblioteca de terceiros-biblioteca padrão: módulos funcionais instalados diretamente no sistema operacional com o interpretador-biblioteca de terceiros: módulos funcionais que precisam ser instalados antes de serem usados-biblioteca, pacote Pacote, módulo Módulo , referidos coletivamente como módulo

python——o uso da biblioteca turtle
Princípio: Há uma tartaruga andando no centro do formulário, e os traços da caminhada formam uma imagem. O
parâmetro do turtle.circle é que o centro padrão do círculo está em a posição r no lado esquerdo da tartaruga. No lado direito da direção para frente,
preste atenção às coordenadas e coordenadas absolutas da tartaruga, o ângulo de direção da tartaruga e o ângulo absoluto. A descrição da tartaruga é relativa para a posição atual da tartaruga
, enquanto as coordenadas absolutas e a direção são relativas ao centro da tela como a origem da coordenada Funções de controle
de pincel——penup, pendown, pencolor, pensize
)
Funções de controle de direção—goto (alcançar um valor absoluto de coordenada), seth (ângulo de direção absoluto), esquerda, direita (relativo ao ângulo da tartaruga) chamando a atenção
para a lógica, quais são as etapas a serem alcançadas, especialmente o ângulo de rotação , a função do círculo deve ser usada razoavelmente. e coordenadas absolutas, ângulos

Pontos de conhecimento para prestar atenção no segundo dia:
tipos básicos de dados e suas representações:
1: Tipo numérico: a faixa de valores do tipo inteiro python é ilimitada e há mantissas incertas em operações entre números de ponto flutuante. mantissas incertas aparecem em 16 dígitos após o ponto decimal , não é um bug. Os números de ponto flutuante podem ser expressos em notação científica, E == a*10^b; o tipo de número complexo é exatamente o mesmo que o número complexo matemático e as partes real e imaginária da quantidade complexa podem ser obtidas usando Z.real e Z.imag respectivamente. Os operadores de operação são completamente consistentes com a matemática, X//y é a representação da divisão inteira, X**Y é a representação de X à potência de Y e outros tipos que são completamente consistentes com a matemática podem ser operações misturadas e o resultado é "mais amplo"
Tipo - Há uma relação gradualmente "expandida" ou "ampliada" entre os três tipos: inteiro - > número de ponto flutuante -> número complexo
Algumas funções de operação numérica comumente usadas:
round(x,y)___round x para manter y casas decimais
max , min——Cálculo de valor máximo e mínimo
divmod——Função de quociente e resto, retorna o quociente e resto de um tipo primitivo
pow——Calcule a função de potência y de x
Você pode usar funções int, float e complexas para forçar a conversão de certos tipos de dados para o tipo

2: Tipo de string e sua operação:
Python não possui um tipo de caractere separado. Somente tipo string: uma sequência ordenada de caracteres que consiste em 0 ou mais caracteres - uma string é representada por um par de aspas simples ou duplas Observe o uso avançado de divisão de strings
, o tamanho do passo é contado a partir do elemento atual, passo O comprimento é um número negativo, o que significa fatiar de trás para frente, e o uso do caractere shift "\" é semelhante ao da linguagem C Operador de string:
x+ y conecta duas strings x e y
n *x ou x *n Copia a string x n vezes
x ins Retorna True se x for uma substring de s, caso contrário, retorna
False chr (u)x é codificação Unicode, retorna seu caractere correspondente ord(x)x é um caractere, retorna sua codificação Unicode correspondente (caracteres só podem ser operados em um único caractere) cada caractere em uma string python é uma string de caracteres codificada em Unicode método de processamento: método é um nome próprio em programação: "método" refere-se especificamente ao estilo . () Function () - o método em si também é uma função, mas relacionado a, estilo . () usa str.lower()/upper () - retorna uma cópia da string, toda maiúscula ou minúscula






str.split(sep=None)——retorna uma lista que consiste nas partes separadas de str de acordo com sep "A,B,C".split(",") O resultado é ['A','B',' C'], para ver se tem conteúdo sep na string, se tiver, vai ser dividido em uma lista de acordo com o conteúdo do sep, a string precisa ter um espaçador, e aí vai ser dividida em uma lista separada por "," por padrão str.count()
— —Retorna o número de vezes que uma substring de uma string aparece em uma string
str.replace(old,new), retorna uma cópia da string, todas as antigas são substituídas por novas
str .center(width[,fillchar])—— string str Centraliza de acordo com a largura, fillchar opcional "python".center(20, "=") o resultado é '=Pitão=', para conversão de formato
str.strip(chars) - remova os caracteres listados nos caracteres esquerdo e direito de str "= python=".strip("=np") O resultado é "ytho ", apenas remova os dois lados da string, o meio não será removido, strip significa remover, remover
str.join(iter) - adicione um str após cada elemento da variável iter, exceto o último elemento, "," O resultado de .join(" 12345") é "1,2,3,4,5"#Usado principalmente para separação de strings, etc., os elementos no objeto iter devem ser strings
Observe que o método de operação da string é para o tipo string Sim, o parâmetros da função devem ser representados por strings

Formatação de strings:
A formatação é a maneira de formatar strings. A formatação de strings usa o método .format(). O uso é o seguinte: <template string>.format(<parâmetros separados por vírgula>) format() Controle de formato do
método : introduzir o mecanismo de slot, dentro do slot é { <número do parâmetro>: <tag de controle de formato>}
tag de controle de formato é: <fill><alignment><width>, <,><.precision><type>, o último três são para números, o símbolo inicial ":" no slot.
Não se esqueça, se a marca de largura for menor que a largura da string,
o formato do número é exibido pelo comprimento da string: {0:e},{ 0:E}, {0:f},{0:%}".format(3.14) - a saída é: '3.140000e+00,3.140000E+00,3.140000,314.000000%' "{0:b}, {0:
c} ,{0:d},{0:o},{0:x},{0:X}".format(425 ) - a saída é: '110101001,Ʃ,425,651,1a9,1A9 '

Uso da biblioteca de tempo:
fornece funções de temporização precisas no nível do sistema para análise de desempenho do programa.
A biblioteca de tempo inclui três tipos de funções -
aquisição de tempo: tempo (obter o registro de data e hora atual, ou seja, o valor de tempo interno do computador, ponto flutuante number) ctime (obtém a hora atual A hora é expressa de maneira fácil de ler e a string é retornada) gmtime (obtém a hora atual, expressa como um formato de hora que pode ser processado pelo computador, geralmente usado em conjunto com a função strftime) formatação de hora: strftime(tpl, ts) tpl é um caractere de modelo de formato
A string "%Y -%m-%d %H:%M:%S é usada para definir o efeito de saída, ts é o variável de tipo de tempo interno do computador temporização do programa
: sleep(): gera tempo, em segundos, gera um usuário O valor de tempo específico que você deseja
perf_counter(): retorna um valor de contagem de tempo preciso no nível da CPU em segundos, mede o tempo, o programa inicia uma vez e termina uma vez, a diferença entre os dois é o tempo de execução do programa

Preste atenção aos pontos de conhecimento no terceiro dia: a estrutura de controle do programa

1: Estrutura de ramificação: A estrutura de ramificação única seleciona diferentes modos de operação de caminho direto de acordo com os resultados das condições de julgamento, usando if—elif——else form
estrutura de ramificação única, meia estrutura, estrutura de múltiplas ramificações e estrutura de duas ramificações Expressão compacta:
forma compacta: estrutura de dois ramos adequada para expressões simples <expressão 1> if<condição> else<expressão 2>, observe que o
operador de julgamento de condição de expressão é o mesmo da linguagem C (!=, <=, >=, == )
Três palavras reservadas para combinação condicional: operador de combinação condicional e descrição de uso:
x e y OU lógico de duas condições x e y e
x ou y OU lógico de duas condições x e y -> 》》》Atualmente, é um relacionamento de expressão lógica. A combinação de condições
notx e condição x não é lógica.
A manipulação de exceção do programa:
o uso de try:except: lida com exceções de programa simples. Se o nome da exceção for adicionado depois de except, apenas trata a
estrutura de ramificação anormal e preste atenção ao julgamento das condições, bem como a relação entre cada condição, se está contida, e a relação lógica das condições é clara

2: A estrutura de loop do programa:
loop de travessia: o modo de operação de loop formado ao percorrer uma determinada estrutura: for<variável de loop> in<estrutura de travessia>:<bloco de instrução>, extrai elementos um a um da estrutura de travessia, coloca -los na variável de loop,
Aplicação do loop de travessia: É freqüentemente usado junto com a palavra reservada in e a função range para formar um loop de contagem (tempos específicos (semelhante ao método de divisão para gerar uma sequência), N vezes), travessia de strings e listas e passagem de arquivos, preste atenção A relação entre a variável de loop e a estrutura de passagem, cada loop atribui os elementos na estrutura de passagem à variável de loop Loop infinito: modo de operação de loop controlado por condições - execute o bloco de
instrução repetidamente até que a condição não seja satisfeita, while<condição> : Composição do bloco de instrução
Palavras reservadas para controle de loop:
break: salta e executa todo o loop atual (apenas uma camada do loop pode ser saltada, se houver várias camadas de loops, continuar a executar a próxima camada do loop), pular apenas para fora do loop interno atual continue
: end Quando o segundo loop, ou seja, quando a instrução após o próximo continue não executar mais
o uso avançado do loop: a estrutura do loop é usado em conjunto com a estrutura else. Quando o loop não é encerrado pela instrução break, o bloco de instrução else é executado - o bloco de instrução else é usado como "normal" para concluir o loop As recompensas pertencem ao mesmo nível do loop palavras reservadas para e enquanto. Observe que executar ou não a instrução else está relacionado a break

Uso da biblioteca aleatória:
A biblioteca aleatória inclui dois tipos de funções, oito das quais são comumente usadas:
função aleatória básica: seed() gera um número aleatório com um determinado número aleatório seed e random() gera um decimal aleatório entre 0 e 1
função aleatória estendida: randint , randrange, getrandbits, uniform,
choice, shuffle (ordem de interrupção) //Essas duas funções são operações em sequências
Aprenda a usar um grande número de dados de amostra para simular o cálculo de um valor preciso

Ponto de conhecimento do dia 4: função e reutilização de código

Uma função é um grupo de instruções reutilizáveis ​​com uma função específica. Uma função é uma abstração de uma função. Uma função geral expressa uma função específica e a reutilização de código.
Definição de uma função Uma função é uma representação de um trecho de código;
def <nome da função>(<parâmetros (0 ou mais)> ) :
<corpo da função>
return<valor de retorno>
Definição de uma função: quando uma função é definida , os parâmetros especificados são Um espaço reservado - depois que a função é definida, ela não será executada se não for chamada - quando a função é definida, os parâmetros são inseridos, o corpo da função é processado e o resultado é emitido (IPO) call: call é a maneira de executar o código da função,
call O parâmetro real deve ser fornecido quando o parâmetro real é usado para substituir o parâmetro na definição - o valor de retorno será obtido após a
chamada da função
Esses parâmetros especificam valores padrão , que constituem parâmetros opcionais. Se nenhum valor for especificado para o parâmetro opcional quando a função for chamada, o valor padrão do parâmetro opcional será usado. Se um novo valor for especificado, o novo valor será usado. Passagem de parâmetro variável: quando a função é definida, pode-
se Projetar um número variável de parâmetros, ou seja, a quantidade total de parâmetros é incerta, usando a forma de "*"
def<nome da função>(<parâmetro>,*b): quando múltiplos os parâmetros são inseridos, b é equivalente a uma tupla e o par é adotado A operação da tupla para operar b
<corpo da função>
return<valor de retorno>

Duas maneiras de passar parâmetros Quando uma função é chamada, os parâmetros podem ser passados ​​por posição ou nome
O valor de retorno da função A função pode retornar zero ou mais resultados - a palavra reservada de retorno é usada para passar o valor de retorno - a função pode ter um valor de retorno ou
não, pode ter return ou não -return pode passar 0 valor de retorno ou pode passar qualquer número de valores de retorno. Se a função tiver vários valores de retorno, esses valores de retorno serão colocados em uma tupla e devolvida

Variáveis ​​locais e variáveis ​​globais Regra 1: Variáveis ​​locais e variáveis ​​globais são variáveis ​​diferentes - variáveis ​​locais são espaços reservados dentro da função, que podem ter o mesmo nome que variáveis ​​globais, mas são diferentes -
após o término da operação da função,
variáveis ​​locais são liberadas - podem ser retido por palavras globais usam variáveis ​​globais dentro da função, adicionam global para definir
variáveis ​​globais dentro da função e alteram o valor da variável global

Variável local e regra de variável global 2: Uma variável local é um tipo de dado combinado e não foi criado, o que equivale a uma variável global, ou seja, uma variável global é
declarada fora da função e é um tipo de dado combinado, e não é declarado dentro da função ao definir a função Variável do tipo combinação, a variável é equivalente a
uma variável global, se houver uma variável do tipo de dados combinação declarada novamente dentro da função, a variável é equivalente a uma variável local

Regras para uso de variáveis ​​locais e variáveis ​​globais - tipos de dados básicos, independentemente de terem o mesmo nome, variáveis ​​locais são diferentes de variáveis ​​globais - variáveis ​​globais
podem ser declaradas dentro de uma função através da palavra reservada global -
tipos de dados combinados, se locais as variáveis ​​não são realmente criadas, elas são variáveis ​​globais

Função lambda: A função lambda retorna o nome da função como resultado - a função lambda é uma função anônima, ou seja, uma função sem nome
- é definida usando a palavra reservada lambda e o nome da função é o resultado de retorno -
o A função lambda é usada para definir uma simples que pode ser expressa em uma linha A
estrutura da função: <nome da função>=lambda<parâmetro>:<expressão>, retorna um nome de função, você pode usar diretamente o nome da função para chamar o lambda função da próxima vez, a função simples definida, por exemplo: f = lambda x, y : x + yf(10, 15)------>25
use a palavra reservada def para definir a função, lambda define a função anônima - parâmetro opcional (atribuir valor inicial),
parâmetro variável (*b), transferência de nome - retorno de palavra reservada Qualquer número de resultados pode ser retornado -
a palavra reservada global declara o uso de variáveis ​​globais, algumas regras implícitas, basta usar funções para prestar atenção a esses assuntos

Para recursão de função, você deve primeiro esclarecer o que são o caso base e a cadeia e, em seguida, escrever um programa para determinar o método de recursão

Pontos de conhecimento no quinto dia:
1: Tipos de coleção e suas operações:
coleções são combinações não ordenadas de vários elementos - tipos de coleção são consistentes com o conceito de coleções em matemática - elementos de coleção não são ordenados, cada elemento é único e não há elementos idênticos elementos - Os elementos da coleção não podem ser alterados e não podem ser tipos de dados variáveis
​​. As coleções são representadas por chaves {} e os elementos são separados por vírgulas. - Para criar um tipo de coleção, use {} ou set() - Para criar um tipo de coleção vazio tipo de coleção, você deve usar set(), que é o mesmo que um dicionário A diferença entre os tipos, o dicionário vazio pode ser representado diretamente por {} Operador de conjunto:
S
| T união, retorna um novo conjunto, incluindo todos os elementos do definir S e T
S - T diferença, retornar um novo conjunto, incluído no conjunto A interseção dos elementos S & T em S, mas não em T ,
retornar um novo conjunto, incluindo os elementos
S ^ T em ambos os conjuntos S e T Complemento , retorna um novo conjunto, incluindo os elementos não idênticos nos conjuntos S e T
S <= T ou S < T retorna Verdadeiro/Falso, julgando o relacionamento do subconjunto entre S e T
S >= T ou S > T retorna Verdadeiro/Falso , avaliando a relação de inclusão entre S e T Preste atenção
na diferença entre a diferença e o complemento e
a operação de aprimoramento em matemática Símbolos: |=, -=, &=, ^=
Método de processamento definido:
S.add(x) Se x não está no conjunto S, adiciona x a S
S.discard(x) Remove o elemento x em S, se x Se não estiver no conjunto S, nenhum erro é reportado S.remove
(x) remove o elemento x em S. Se x não estiver no conjunto S, uma exceção KeyError é gerada.
S.clear() remove todos os elementos em S.
S.pop() retorna aleatoriamente o valor de S Um elemento, atualize S, se S estiver vazio e gere uma exceção KeyError, atualize-a para um conjunto S que remove o elemento.
copy() retorna uma cópia do conjunto S
len(S) retorna o número de elementos no conjunto S x em S julga que o elemento x em S, x está no conjunto S, retorna True, caso contrário retorna Falsex não em S julga que o elemento x em S, x é não está no conjunto S
, retorna True, caso contrário, retorna False
set(x) converte outros tipos de variáveis ​​x em tipos de coleção

Cenários de aplicativos de coleta:
comparação de relacionamento de inclusão, desduplicação de dados: todos os elementos do tipo de coleta não são duplicados

2: Tipo de sequência e sua operação:
A sequência é um grupo de elementos com relação de sequência, a sequência é um vetor de elemento unidimensional e os tipos de elemento podem ser diferentes - semelhantes às sequências de elementos matemáticos: s0, s1, ... , sn- 1 - os elementos são guiados por números de sequência , acessam elementos específicos de uma sequência por meio de subscritos
Sequência é um tipo de classe base, incluindo: tipo string, tipo tupla, tipo lista Tipo de sequência
funções e métodos do operador geral:
x em s Se x for um elemento da sequência s, retorna Verdadeiro, caso contrário retorna Falsex
não em s Se x é um elemento da sequência s, retorna Falso, caso contrário retorna Verdadeiro ue
s + t conecta duas sequências s e ts n ou n s copia a sequência s n vezes
s[i ] index, return O i-ésimo elemento em s, i é o número de sequência
s[i: j] ou s[i: j: k] slice, retorna o elemento subsequência len
(s ) retorna o comprimento da sequência s, ou seja, o número de elementos
min(s) retorna o menor elemento da sequência s, os elementos em s precisam ser comparáveis ​​max(s) retorna o maior elemento da sequência s e os elementos em s precisam ser comparáveis s.index(
x ) ou s.index(x, i, j) retorna a posição da primeira ocorrência do elemento x na sequência s de i até a posição j
s.count(x) retorna o número total de ocorrências de x na sequência s

3: Tipo ancestral da tupla e seu funcionamento:
tupla é uma extensão do tipo sequência - tupla é um tipo sequência,
uma vez criada não pode ser modificada -! ! ! ! ! O mesmo vale para o tipo string, e um dos caracteres não pode ser modificado.
Use parênteses () ou tuple() para criar, e os elementos são separados por vírgulas - você pode usar ou não usar parênteses. Obs: quando houver vários valores atribuídos a uma variável x , x assume como padrão o tipo de ancestral

4: Tipo de lista e sua operação:
A lista é um tipo de sequência, que pode ser modificada à vontade após a criação - use colchetes [] ou list() para criar, separe os elementos com vírgulas - cada tipo de elemento na lista pode ser diferente, sem restrições de comprimento
Atenção! ! ! Os colchetes [] na verdade criam uma lista e as atribuições apenas passam referências. Quando uma variável de lista é atribuída a outra variável de lista, as duas variáveis ​​apontam para a mesma variável de lista. Alterar o valor de uma das variáveis ​​de lista também alterará a outra

Funções e métodos de operação do tipo lista:
ls[i] = x substitui o i-ésimo elemento da lista ls por x
ls[i: j: k]= lt substitui o elemento sublista correspondente após a fatia ls pela lista lt
del ls [i] exclui a lista O i-ésimo elemento em ls
del ls[i: j: k] exclui o i-ésimo ao j-ésimo elemento na lista ls com um tamanho de passo de k
ls += lt atualiza a lista ls , e adiciona o elemento lt da lista à lista ls
ls *= n atualiza a lista ls, cujos elementos são repetidos n vezes
ls.append(x) adiciona um elemento x no final da lista ls, se x for uma lista, a lista é adicionada como um elemento em ls.
ls.clear() exclui todos os elementos na lista ls
ls.copy() gera uma nova lista, atribui todos os elementos em ls
ls.insert(i,x) adiciona o elemento x à posição i da lista ls
ls.pop(i ) Retire o i-ésimo elemento da lista ls e exclua o elemento
ls.remove(x) exclua o primeiro elemento x que aparece na lista ls
ls.reverse() inverta os elementos da lista ls

Cenários de aplicação do tipo sequência:
travessia de elemento, se não quiser que os dados sejam alterados pelo programa, converta para tipo tupla

5: Tipo de dicionário e sua operação:
O mapeamento é uma correspondência entre uma chave (índice) e um valor (dados), e o tipo de sequência usa 0...N inteiros como o índice de dados padrão. O tipo de mapeamento é definido pelo usuário para os dados.
O tipo de dicionário é a personificação do "mapeamento" - par chave-valor: a chave é a extensão do índice de dados - o dicionário é uma coleção de pares chave-valor e os pares chave-valor estão fora de ordem - use chaves {} Criado com dict(), o par chave-valor é representado por dois pontos: Na variável do dicionário, o valor é obtido através da chave <variável do dicionário> = {
< chave 1>:<valor 1> , … , <chave n>:<valor n> }
valor> = <variável de dicionário>[<chave>]
[ ] é usado para indexar ou adicionar elementos à variável de dicionário
<variável de dicionário> [<chave>] = <valor>——Adicionar um novo par chave-valor método
type(x ) retorna o tipo da variável x, o uso da função type presta atenção! ! !

Função e método de operação do tipo subclasse
del d[k] exclui o valor de dados correspondente à chave k no dicionário d k
in d julga se a chave k está no dicionário d, retorna True se estiver, caso contrário, False
d.keys() retorna o dicionário d Todas as informações de chave em
d.values() retorna todas as informações de valor no dicionário d
d.items() retorna todas as informações de par chave-valor no dicionário d
d.get(k, ) Se a chave k existir, retorne o valor correspondente, se não for Em seguida, retorne o valor, padrão: significando: valor de configuração do sistema; valor predefinido
d.pop(k, ) chave k existe, então retire o valor correspondente, se não, retorne o valor e atualize d
d.popitem() aleatoriamente do dicionário d Pegue um par chave-valor, retorne-o como uma tupla e atualize d
d.clear() exclua todos os pares chave-valor
len(d) retorna o número de elementos no dicionário d

ls.append(x), se x for uma lista, adiciona a lista como um elemento a ls.
Ao criar um dicionário, se a mesma chave corresponder a valores diferentes, o dicionário usará o último (mais recente) "par chave-valor".
O tipo de sequência pode ser considerado um vetor unidimensional em geral e, se seus elementos forem todos sequências, ele pode ser considerado um vetor bidimensional

6: Uso da biblioteca jieba:
jieba é uma excelente biblioteca terceirizada para segmentação de palavras chinesas. O texto chinês precisa ser segmentado para obter palavras individuais.
Princípio da segmentação de palavras: use um dicionário de sinônimos chinês para determinar a probabilidade de associação entre os caracteres chineses - o a probabilidade entre caracteres chineses é alta Forme frases para formar resultados de segmentação de palavras - Além da segmentação de palavras, os usuários também podem adicionar frases personalizadas.
Três modos de segmentação de palavras jieba: Modo preciso: segmente o texto com precisão sem palavras redundantes -
Modo completo: combine tudo palavras possíveis no texto As palavras são digitalizadas, redundantes, segmentadas de diferentes ângulos
Modo de mecanismo de busca: com base no modo preciso, palavras longas são segmentadas novamente

jieba.lcut(s) modo exato, retorna um resultado de segmentação de palavras do tipo lista

jieba.lcut("A China é um grande país")! ! ! ! O uso mais importante
['China', 'é', 'um', 'ótimo', 'de', 'país']
jieba.lcut(s, cut_all=True) modo completo, retorna uma lista de resultados de segmentação de palavras, existe redundância

jieba.lcut("A China é um ótimo país", cut_all=Verdadeiro)
['China', 'país é', 'um', 'ótimo', 'de', 'país']
jieba.lcut_for_search(s) Search Engine modo, retorna um resultado de segmentação de palavras do tipo lista, há redundância

jieba.lcut_for_search("A República Popular da China é ótima")
['China', 'Chinês', 'Povo', 'República', 'República', 'República Popular da China', 'Sim', 'Ótimo', 'of ']
ieba.add_word(w) Adicionar nova palavra w ao dicionário de segmentação de palavras

jieba.add_word("linguagem python")

O método sort da lista:

Pontos de conhecimento no sexto dia: arquivo e formatação de dados
1: uso de arquivo:
arquivo é a abstração e coleta de dados-arquivo é uma sequência de dados armazenada em armazenamento-arquivo auxiliar é uma forma de armazenamento de dados-forma de apresentação de arquivo: arquivos de texto e arquivos binários
Compreensão dos arquivos: arquivos de texto versus arquivos binários - arquivos e arquivos binários são apenas maneiras de exibir arquivos - essencialmente, todos os arquivos são armazenados em formato binário - em formato, todos os arquivos usam duas maneiras de exibir arquivos de texto: Um
arquivo composto por uma única codificação específica, como a codificação UTF-8 - devido à existência de codificação, também é considerada uma longa string de armazenamento - adequado por exemplo: arquivos .txt, arquivos .py e outros arquivos binários: compostos diretamente de bits 0
e 1, sem codificação de caracteres uniforme - geralmente há uma estrutura organizacional de binário 0 e 1, ou seja, o formato do arquivo - adequado por exemplo: arquivos .png, arquivos .avi, etc.

Abertura e fechamento de arquivos:
open: <nome da variável>= open(<nome do arquivo>, <modo de abertura>), observe que um caminho "" deve ser alterado para dois "\", ou use "/", o arquivo de origem é o mesmo O diretório pode salvar o caminho
Modo aberto:
'r' modo somente leitura, o valor padrão, se o arquivo não existir, retornar FileNotFoundError
'w' modo de substituição, criar se o arquivo não existir, substituir completamente
' x' criar modo de gravação, o arquivo não existe Se existir, crie-o, se existir, retorne FileExistsError
'a' Anexar modo de gravação, se o arquivo não existir, crie-o, se existir, anexe o conteúdo no fim do arquivo
'b' Modo de arquivo binário
't' Modo de arquivo de texto, o valor padrão é
'+' e r/w/x/a são usados ​​juntos, e a função simultânea de leitura e escrita é adicionada com base no função original
!!! Observe que deve ser escrita na forma de uma string! ! !
f.close() fecha o arquivo! ! !

Leitura do conteúdo do arquivo:
.read(size=-1) Lê todo o conteúdo, se os parâmetros forem fornecidos, o comprimento do tamanho antes da leitura, a unidade é byte! ! , observe que read é uma operação de texto completo

s = f.read(2) China.readline
(size=-1) lê uma linha de conteúdo, se os parâmetros forem fornecidos, leia o comprimento do tamanho antes da linha

s = f.readline() A China é um ótimo país!
.readlines(hint=-1) lê todas as linhas do arquivo, forma uma lista com cada elemento da linha, se dados parâmetros, lê a linha de dica anterior

s = f.readlines() ['A China é um ótimo país! ']

Gravação de arquivo:
.write(s) grava uma string ou fluxo de bytes no arquivo

f.write("A China é um ótimo país!")
.writelines(lines) escreve uma lista cujos elementos são todos strings em um arquivo

ls = ["China", "França", "Estados Unidos"]
f.writelines(ls) China, França e Estados Unidos———retorna a união direta de todos os elementos da lista e remove as aspas
f> .seek(offset) Altere a posição do ponteiro da operação do arquivo atual,
o significado do deslocamento é o seguinte: 0 - o início do arquivo; 1 - a posição atual; 2 - o final do arquivo

f.seek(0) #Volta ao início do arquivo
Atenção! ! ! , depois que o arquivo é gravado, o ponteiro vai para o final do arquivo por padrão. Se você deseja imprimir o conteúdo escrito, também deve alterar a posição do ponteiro do arquivo. É uma boa ideia usar o método seek para abra o arquivo e use close() para fechar o
arquivo Habit. Se close() não for chamado, a referência do arquivo será liberada quando o programa Python atual for encerrado completamente, ou seja, quando o programa for encerrado, é equivalente a chamar close(). O mesmo arquivo pode ser aberto em modo texto ou
modo binário
. Nota: a linha obtida por for line em f contém o último caractere de nova linha (\n) de cada linha, então remova o caractere de nova linha para estatísticas, o arquivo é lido por linha, cada linha terá um caractere de nova linha por padrão , linha em branco É uma linha em branco, não haverá conteúdo, incluindo um caractere de nova linha, para julgar se é uma linha em branco, basta usar if line == ""! ! !

Formatação e processamento de dados unidimensionais:
Dimensão: a forma de organização de um conjunto de dados Dados
unidimensionais: compostos por dados ordenados ou não ordenados em uma relação peer-to-peer, organizados de forma linear, correspondendo a dois conceitos conceituais dados dimensionais
, como listas, matrizes e conjuntos: compostos de vários dados unidimensionais, é uma forma combinada de dados unidimensionais Dados multidimensionais
: Estendidos de dados unidimensionais ou bidimensionais para uma nova dimensão para formar
alta dados dimensionais: use apenas o relacionamento binário mais básico para mostrar a estrutura complexa entre os dados, por exemplo: dicionários aninhados

Representação de um bit de dados: Se os dados forem ordenados: use o tipo de lista O tipo de lista pode expressar dados ordenados unidimensionais - o loop for pode percorrer os dados e processar cada dado Se os dados estiverem fora de ordem: use o tipo de coleção
- tipo de coleção Pode expressar dados unidimensionais não ordenados - o loop for pode percorrer os dados e, em seguida, processar cada dado

Armazenamento de dados unidimensionais:
método de armazenamento 1: separados por espaços, separados por um ou mais espaços, sem quebras de linha. Desvantagens: Não pode haver espaços nos dados
Método de armazenamento 2: separado por vírgulas, use vírgulas inglesas de meia largura para separar os dados para armazenamento, sem quebras de linha. Desvantagens: vírgulas em inglês não são permitidas nos dados
Método de armazenamento 3: outros métodos, - use outros símbolos ou combinações de símbolos para separar, e símbolos especiais são recomendados.

Processamento de dados unidimensionais:
armazenamento: gravar os dados representados pelo programa em uma representação de arquivo
: ler os dados armazenados no programa

Ler dados de um arquivo separado por espaços: use o método ls = txt.split()
para ler dados de um arquivo especial separado por símbolos, use ls = txt.split("$") e use o método split da string para operar, depende principalmente do que a string é usada para separar

Processamento de gravação de dados unidimensionais:
Grave dados em arquivos usando separação de espaço: use: f.write(' '.join(ls)), adicione um espaço após cada elemento da lista ls e, em seguida, monte-os usando um
especial Escreva os dados no arquivo de forma delimitada: use: f.write('$'.join(ls)), ou principalmente depende do que usar para separar os caracteres escritos

Formatação e processamento de dados bidimensionais:
Representação de dados bidimensionais: use o tipo de lista - o tipo de lista pode expressar dados bidimensionais - use a lista bidimensional, a lista aninhada na lista é suficiente, use duas camadas de loop for para percorrer cada elemento - Cada elemento na lista externa pode corresponder a uma linha ou coluna

Formato CSV e armazenamento de dados bidimensionais:
CSV: Comma-Separated Values ​​​​é um valor separado por vírgula, que é
um formato de armazenamento de dados unidimensionais aceito internacionalmente. Geralmente, a extensão .csv - dados unidimensionais por linha , separados por vírgulas, sem linhas vazias - tanto o Excel quanto o software de edição geral podem ser lidos ou salvos como arquivos csv
Nota! ! ! - Dados armazenados no formato CSV, se um elemento estiver faltando, a vírgula ainda deve ser mantida - O cabeçalho dos dados bidimensionais pode ser armazenado como dados ou armazenados separadamente - A vírgula é uma vírgula de meia largura em inglês e há sem espaço extra entre a vírgula e os dados

Armazenamento de dados bidimensionais: hábitos gerais de indexação: ls[linha][coluna], primeira linha e segunda coluna
Processamento de dados bidimensionais:
ler dados de um arquivo no formato CSV:
fo = open(fname)
ls = []
for line in fo :
line = line.replace("\n","" ) ## Remova o caractere de nova linha no final de cada linha, preste atenção especialmente a este
ls.append(line.split(",")) ## A lista gerada é aninhada
fo.close()
grava dados em um arquivo no formato CSV:
ls = [[],[],[]] #lista bidimensional
f = open(fname, 'w')
for item in ls:
f.write( ','.join(item) + '\n')
f.close()

Uma função pode ter vários retornos, mas quando for executada até o primeiro retorno, a função definitivamente sairá e não executará o retorno seguinte, return também pode chamar recursivamente o nome da função Observação: enquanto houver um slot, ele deve ser
usado A função de formato expressa alguns valores
Use strings, listas, dicionários e outras funções e métodos relacionados para entender o uso preciso de cada método e função
Atenção! ! ! Contanto que a expressão possa calcular seu valor, o python calculará automaticamente o valor da expressão

Os pontos de conhecimento que precisam ser observados ao ler o resumo do livro:

Um objeto cujo valor de hash não muda durante seu tempo de vida é chamado de hashable. A hashability permite que os objetos sejam usados ​​como chaves de dicionário ou membros de coleção, uma vez que essas estruturas de dados usam valores de hash internamente.

Nem os contêineres mutáveis, como listas ou dicionários, são passíveis de hash. Portanto, olhando novamente para o TypeError no início do artigo, é fácil explicar que apenas objetos com hash podem ser usados ​​como chaves de dicionário.

Da mesma forma, a lista a no início do artigo não pode ser usada como um membro do conjunto.
3 >= 1 ----- Verdadeiro (ou significado)
e/ou valor de retorno não lógico pode se referir à lógica da ciência --- -- 1 ou 3 — 1 1 e 3 ---- 3
A operação de inversão deve considerar a inversão do bit de sinal, e o resultado pode ser um número negativo
Operadores de identidade: is, not is, para julgar se os dois identificadores se referem ao mesmo objeto, ou seja, dois O conteúdo do identificador é o mesmo
? Operadores de associação: in, not in

Toda vez que input() é chamado em python, uma linha de conteúdo é inserida. Existem várias linhas de conteúdo de entrada e são necessários vários input()
para inserir dir (o símbolo do tipo de dados relevante) no interpretador python para exibir o método interno desses objetos de dados, por exemplo: dir([])
Em Python, a variável é Variável, ele não tem tipo, o dito tipo é o tipo do objeto na memória apontado pela variável
Obs! ! ! , se o loop for encerrado pela instrução break, a instrução else correspondente ao loop não será executada e a instrução else será executada apenas quando a instrução for for executada com sucesso ou a condição da instrução while for False

A instrução pass é uma instrução vazia, principalmente para manter a integridade da estrutura do programa. pass não faz nada e geralmente é usado como uma declaração de espaço reservado.
Quando o usuário não pode prever o número de parâmetros, parâmetros do tipo *args podem ser usados ​​e *args representa um objeto de tupla. args é diretamente o nome da variável do objeto ancestral, **args representa um objeto de dicionário, onde o lado esquerdo do sinal de igual do parâmetro é a chave e o lado direito é o valor e args é diretamente o nome da variável do dicionário objeto

A essência da atribuição em Python é passar uma referência ao objeto. Quando o valor de uma variável é atribuído a outra variável, ambas apontam para o mesmo espaço de memória ao mesmo tempo, desde que o endereço do espaço de memória apontado pelo dois não muda (o tipo de dados combinado muda o valor), alterando o valor de um dos objetos, o outro também mudará, uma compreensão profunda do significado dos ponteiros apontando para o mesmo espaço de memória

! ! ! Nota: Para operações de string, se o corte não adicionar um tamanho de passo, ele deve aumentar positivamente e diminuir reversamente para preencher um determinado intervalo de interceptação. Se houver um tamanho de passo, será o valor interceptado da esquerda e o termine à direita. Se da esquerda para a direita ou da direita para a esquerda deve ser julgado de acordo com os valores positivos e negativos. Observe que o último caractere é x[-1]

Conjunto de funções internas do Python:
A função eval() é usada para executar uma expressão de string e retornar o valor da expressão

Acho que você gosta

Origin blog.csdn.net/weixin_45702442/article/details/113922944
Recomendado
Clasificación