No processo de aprendizagem de strings, já falamos sobre muitos métodos de uso. No uso real, muitas vezes precisamos formatar strings e gerar os resultados necessários por meio da formatação.
Formatar uma string é primeiro criar um espaço, depois deixar algumas posições neste espaço e, em seguida, preencher o conteúdo correspondente de acordo com as necessidades. As posições deixadas aqui são equivalentes a espaços reservados. Uma é usar o operador % e a outra é usar o método format().
O operador % é muito conveniente quando formatamos strings. Sua estrutura de sintaxe é a seguinte:
'%[+][-][0][.m] caractere de formato'%iteração
1) iteração é o conteúdo que queremos preencher, e o formato após o primeiro% é o formato que queremos escolher.
2)[+] é o alinhamento à direita e '+' é um parâmetro que podemos preencher. O número representa a largura do alinhamento.
3)[-] é o alinhamento à esquerda e '-' é um parâmetro que podemos preencher. O número representa a largura do alinhamento.
4) O m em [.m] é uma precisão opcional, indicando quantas casas decimais devem ser retidas após a vírgula.
5) O caractere de formatação é o formato que precisamos selecionar. Seus tipos comuns são string %s, número inteiro decimal %d, caractere único %c, número de ponto flutuante %f, número hexadecimal %x e número octal %o, caractere%. %.
A compreensão do operador % pode ser relativamente abstrata. Vamos aprender sobre isso por meio de exemplos. O que normalmente usamos é gerar um número de ponto flutuante, retendo 2 casas decimais após o ponto decimal. O código é o seguinte:
>>>my_str=66666.66666>>>print('O formato com 2 casas decimais é: %.2f'%my_str) O formato com 2 casas decimais é: 66666,67
Ao reter decimais, a operação de arredondamento será realizada automaticamente. Ao utilizá-lo, preste atenção à sua forma. Podemos escolher um ou mais para combinar para formatar a string. 2f' e, em seguida, use % no final da string para conectar a string correspondente, que é diretamente equivalente ao conteúdo correspondente.
Vamos introduzir o uso do alinhamento novamente:
>>>foriinrange(5):...print('%-5d'%i,end='')#Alinhamento à esquerda...print('%5d'%i)#Alinhamento à direita...0011223344
5 é a largura do alinhamento do código. Usamos alinhamento à esquerda e à direita. A primeira coluna é alinhada à esquerda e a largura é 5. Em seguida, i é gerado novamente sem quebra automática. .
Trata-se do operador %. Você pode dominar esse conhecimento mais rapidamente praticando-o abaixo.
O método format() fornece mais métodos para formatar strings. Sua sintaxe básica é substituir '%' por '{}' e ':'. Seu formato de sintaxe é:
str.formato()
Vejamos isso através de um exemplo:
namea='Xiao Ming' nameb='Xiao Hua' print('{} é um bom amigo de {}'.format(namea,nameb))
Este exemplo é a maneira mais simples de usá-lo, mas como esse método foi introduzido posteriormente, ele deve ter suas vantagens. Vamos apresentar seu método específico a seguir.
No espaço reservado a estrutura pode ser:
{[index[:[fill]align][width][#][.k][type]]}
Vejamos essa estrutura por meio do diagrama:
O exemplo acima contém apenas '{}' simples. Se o modificarmos, podemos usar as estruturas acima.
1) Índice é a posição do índice. Podemos fornecer um número para especificar a posição do índice do objeto na lista. O valor do índice começa em 0. Se não houver valor do índice, ele está na ordem da esquerda para a direita. Como no exemplo acima, se adicionarmos o valor do índice:
namea='Xiao Ming' nameb='Xiao Hua' print('{1} é um bom amigo de {0}'.format(namea,nameb))
Então suas posições foram trocadas.
2) ':' é um pré-requisito para uso subseqüente. Você deve adicionar um ':' ao usar operações subsequentes.
3) fill pode selecionar um parâmetro como o número de caracteres para preenchimento em branco.
4) largura permite escolher um parâmetro para especificar o comprimento.
5) alinhar pode escolher um parâmetro como método de alinhamento. Os parâmetros são '>' para alinhamento à direita, '<' para alinhamento à esquerda, '=' para alinhamento à direita, mas o símbolo é colocado na extrema esquerda e '^'. representa centralização. Estes requerem Usado com largura.
Vejamos um exemplo:
>>>meu_str='dotcpp'>>>print('{:@>10}'.format(meu_str))@@@@dotcpp
Neste exemplo, escolhemos o alinhamento à direita, definimos a largura como 10 e substituímos os caracteres de espaço em branco pelo símbolo @.
6)'#' é o prefixo base.
7).k em k é um parâmetro opcional, usado para representar o número retido após a vírgula decimal.
8) type pode selecionar parâmetros para especificar o tipo. Os comumente usados incluem S para representar uma string, D para representar um número inteiro decimal,% para representar uma porcentagem e f ou F para representar um número de ponto flutuante.
Abaixo usamos um exemplo para usar os métodos acima.
my_str='dotcpp'#Primeiro defina duas strings my_string=123456.654321print('my_str:{1:!^20s}nmystring:{0:$^20.2f}'.format(my_string,my_str))
A saída é:
minha_str:!!!!!!dotcpp!!!!!!!minhastring:$$$$$123456.65$$$$$$
Para my_str, '1' é a posição do índice, '!' substitui caracteres de espaço em branco, '^' representa a posição central, 20 é a largura e 's' é o tipo de string.
Para my_string, '0' é sua posição de índice, '$' substitui o caractere do pacote vazio, '^' representa a posição central, 20 bits de largura, '.2' representa 2 casas decimais após o ponto decimal e 'f' representa tipo de ponto flutuante.
É isso para falar sobre cordas. Cordas são usadas com muita frequência, então todos devem praticá-las e dominá-las através de exercícios.