En el proceso de aprendizaje de cadenas, hemos hablado antes de muchos métodos de uso. En el uso real, a menudo necesitamos formatear cadenas y generar los resultados que necesitamos mediante el formato.
Formatear una cadena es crear un espacio primero, luego dejar algunas posiciones en este espacio y luego completar el contenido correspondiente según las necesidades. Las posiciones que quedan aquí son equivalentes a marcadores de posición. Hay dos formas de formatear una cadena. Uno es usar el operador% y el otro es usar el método format().
El operador % es muy conveniente cuando formateamos cadenas. Su estructura de sintaxis es la siguiente:
'%[+][-][0][.m] carácter de formato'%iteración
1) la iteración es el contenido que queremos completar y el formato después del primer% es el formato que queremos elegir.
2)[+] es la alineación correcta y '+' es un parámetro que podemos completar. El número representa el ancho de la alineación.
3)[-] es la alineación a la izquierda y '-' es un parámetro que podemos completar. El número representa el ancho de la alineación.
4) La m en [.m] es una precisión opcional, que indica cuántos decimales se deben conservar después del punto decimal.
5) El carácter de formato es el formato que debemos seleccionar. Sus tipos comunes son cadena %s, entero decimal %d, carácter único %c, número de punto flotante %f, número hexadecimal %x y número octal %o, carácter%. %.
La comprensión del operador% puede ser relativamente abstracta. Aprendamos sobre él a través de ejemplos. Lo que usamos comúnmente es generar un número de punto flotante y conservar 2 decimales después del punto decimal. El código es el siguiente:
>>>my_str=66666.66666>>>print('El formato con 2 decimales es: %.2f'%my_str) El formato con 2 decimales es: 66666.67
Al retener decimales, la operación de redondeo se realizará automáticamente. Al usarlo, preste atención a su forma. Podemos elegir uno o más para combinarlos para formatear la cadena. Arriba usamos una operación de formato, la parte de formato es '%. 2f ', y luego use% al final de la cadena para conectar la cadena correspondiente, que es directamente equivalente al contenido correspondiente.
Introduzcamos nuevamente el uso de la alineación:
>>>foriinrange(5):...print('%-5d'%i,end='')#Alineación izquierda...print('%5d'%i)#Alineación derecha...0011223344
5 es el ancho de la alineación del código. Usamos alineación izquierda y derecha. La primera columna está alineada a la izquierda y el ancho es 5. Luego se genera i nuevamente sin ajustar. La segunda salida está alineada a la derecha, por lo que la salida es como se muestra arriba. .
Se trata del operador %. Puedes dominar este conocimiento más rápido practicándolo tú mismo a continuación.
El método format() proporciona más métodos para formatear cadenas. Su sintaxis básica es reemplazar '%' con '{}' y ':'. Su formato de sintaxis es:
str.formato()
Veámoslo a través de un ejemplo:
namea='Xiao Ming' nameb='Xiao Hua' print('{} es el buen amigo de {}'.format(namea,nameb))
Este ejemplo es la forma más sencilla de usarlo, pero dado que este método se introdujo más adelante, debe tener sus ventajas. Presentamos su método específico a continuación.
En el marcador de posición la estructura puede ser:
{[índice[:[relleno]alinear][ancho][#][.k][tipo]]}
Veamos esta estructura a través del diagrama:
El ejemplo anterior solo contiene '{}' simple. Si lo modificamos, podemos usar las estructuras anteriores. Expliquemos una por una.
1) El índice es la posición del índice. Podemos darle un número para especificar la posición del índice del objeto en la lista. El valor del índice comienza desde 0. Si no hay un valor de índice, está en orden de izquierda a derecha. Como en el ejemplo anterior, si sumamos el valor del índice:
namea='Xiao Ming' nameb='Xiao Hua' print('{1} es un buen amigo de {0}'.format(namea,nameb))
Luego se intercambiaron sus posiciones.
2) ':' es un requisito previo para el uso posterior. Debe agregar un ':' cuando utilice operaciones posteriores.
3) llenar puede seleccionar un parámetro como el número de caracteres para completar el espacio en blanco.
4) ancho le permite elegir un parámetro para especificar la longitud.
5) align puede elegir un parámetro como método de alineación. Los parámetros son '>' para alineación a la derecha, '<' para alineación a la izquierda, '=" para alineación a la derecha, pero el símbolo se coloca en el extremo izquierdo y '^'. representa centrado. Estos requieren Usado con ancho.
Veamos un ejemplo:
>>>my_str='dotcpp'>>>print('{:@>10}'.format(my_str))@@@@dotcpp
En este ejemplo, elegimos la alineación correcta, luego establecimos el ancho en 10 y reemplazamos los caracteres de espacio en blanco con el símbolo @.
6)'#' es el prefijo base.
7).k en k es un parámetro opcional, que se utiliza para representar el número retenido después del punto decimal.
8) tipo puede seleccionar parámetros para especificar el tipo. Los más utilizados incluyen S para representar una cadena, D para representar un número entero decimal, % para representar un porcentaje y f o F para representar un número de punto flotante.
A continuación utilizamos un ejemplo para utilizar los métodos anteriores.
my_str='dotcpp'#Primero defina dos cadenas my_string=123456.654321print('my_str:{1:!^20s}nmystring:{0:$^20.2f}'.format(my_string,my_str))
La salida es:
my_str:!!!!!!puntocpp!!!!!!!!mystring:$$$$$123456.65$$$$$$
Para my_str, '1' es su posición de índice, '!' reemplaza los caracteres de espacio en blanco, '^' representa la posición central, 20 es el ancho y 's' es el tipo de cadena.
Para my_string, '0' es su posición de índice, '$' reemplaza el carácter del paquete vacío, '^' representa la posición central, 20 bits de ancho, '.2' representa 2 decimales después del punto decimal y 'f' representa tipo de punto flotante.
Eso es todo para hablar de cuerdas. Las cuerdas se usan con mucha frecuencia, por lo que todos deben practicarlas y dominarlas mediante ejercicios.