Tabla de contenido
Dos: uso final del parámetro final de impresión
Tres: uso sep del parámetro del separador de impresión
Cuatro: imprimir salida de caracteres de ancho fijo
Uno: sintaxis de impresión
print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)
Explicación del parámetro:
"objetos": el objeto que se va a imprimir, que se imprimirá en el flujo de texto especificado por el "parámetro de archivo", y la mayoría de los usos solo usan este parámetro;
"sep": separado por "sep";
"end": termina con el parámetro "end" después de la impresión;
"archivo": imprimirá la salida en un archivo, el archivo debe ser un objeto con un método de escritura (cadena); si el argumento no existe o es Ninguno, se utilizará sys.stdout. print() no se puede utilizar con objetos de archivo en modo binario, ya que el argumento que se va a imprimir se convierte en una cadena de texto. Para estos objetos, se debe utilizar file.write(...) en su lugar. El hecho de que la salida se almacene en caché generalmente depende del archivo;
"flush": si el argumento de la palabra clave de descarga es Verdadero, el flujo de salida se vaciará a la fuerza.
"sep", "end", "file" y "flush" deben proporcionarse como argumentos de palabras clave. El parámetro de palabra clave Flush se agregó después de la versión 3.3 de Phthon.
>>> print("my name is ftz ",sep=' ',end='end结尾\n')
my name is ftz end结尾
>>>
>>> logFile = open("logfile.txt",'w')
>>> print("my name is ftz ",sep=' ',end='end结尾\n',file=logFile)
Ejecutado tres veces, el valor predeterminado es agregar
[root]$ cat logfile.txt
my name is ftz end结尾
my name is ftz end结尾
my name is ftz end结尾
Dos: uso final del parámetro final de impresión
La impresión es de nueva línea de forma predeterminada, eso se debe a que el parámetro final es '\n' de forma predeterminada, si desea agregar un símbolo personalizado al final de cada impresión, puede usar el parámetro final, por ejemplo: el "fin "El parámetro de la función print() especifica que es "|", es decir, después de que se completa cada salida de la función print(), se genera "|" al final.
>>> print("默认换行")
默认换行
>>> print("不换行打印",end="")
不换行打印>>>
>>> print("以竖线结尾打印",end="|\n")
以竖线结尾打印|
>>>
Tres: uso sep del parámetro del separador de impresión
El parámetro sep generalmente no se usa mucho, pero aún puede resultar útil en escenarios especiales. Por ejemplo, las URL están separadas por '.', las rutas de acceso están separadas por '/' o las direcciones IP están separadas por caracteres específicos. usar
>>> print('192','168','1','1',sep='.')
192.168.1.1
>>>
>>> print('www','baidu','com',sep='.')
www.baidu.com
>>>
>>> print("F:",'file','work',sep='/')
F:/file/work
>>>
Cuatro: imprimir salida de caracteres de ancho fijo
Cuando queremos generar una serie de resultados, pero los caracteres del medio no son fijos, si es una salida normal, habrá confusión y no se verá bien. print nos permite generar con un ancho de carácter fijo y de izquierda a derecha. alineación
Por ejemplo, el siguiente resultado
学生总数=22 学生名字重复数=29
学生总数=54 学生名字重复数=58
学生总数=455 学生名字重复数=287
学生总数=455 学生名字重复数=287
学生总数=2884 学生名字重复数=1579
学生总数=427 学生名字重复数=207
学生总数=1011 学生名字重复数=67
学生总数=427 学生名字重复数=208
学生总数=427 学生名字重复数=103
学生总数=2276 学生名字重复数=417
学生总数=0 学生名字重复数=0
学生总数=52 学生名字重复数=0
学生总数=52 学生名字重复数=0
学生总数=1522 学生名字重复数=1303
学生总数=0 学生名字重复数=0
学生总数=1558 学生名字重复数=1143
学生总数=454 学生名字重复数=286
学生总数=4 学生名字重复数=0
学生总数=11 学生名字重复数=12
Primero introduzcamos el ancho del carácter, que se refiere al ancho ocupado por cada carácter en la salida. De forma predeterminada, cada carácter tiene el mismo ancho. Pero en algunos casos, queremos que los caracteres del resultado tengan diferentes anchos para lograr un mejor efecto visual. Por ejemplo, es posible que queramos generar una tabla con columnas de igual ancho para alinear los datos.
El código de alineación de ejemplo es el siguiente:
print(f"学生总数={student:<15} 学生名字重复数={count:<20}")
Hemos utilizado el símbolo "<" para especificar la alineación a la izquierda. Si desea alinear a la derecha, puede utilizar el símbolo ">".
También podemos usar el método anterior para generar el formulario de tabla.
data = [
["Alice", 25, "Female"],
["Bob", 30, "Male"],
["Charlie", 35, "Male"]
]
# 计算每列的最大宽度
max_widths = [max(len(str(row[i])) for row in data) for i in range(len(data[0]))]
# 输出表头
header = ["Name", "Age", "Gender"]
header_format = " | ".join(f"{
{:<{width}s}}" for width in max_widths)
print(header_format.format(*header))
print("-" * sum(max_widths))
# 输出数据
for row in data:
row_format = " | ".join(f"{
{:<{width}}}" for width in max_widths)
print(row_format.format(*row))
Resultado de salida:
La impresión f se introdujo en Python 3.6. En versiones anteriores, también se admite la salida de caracteres de ancho fijo y el ancho de carácter especificado se genera mediante el método de formato de cadena. Los métodos de formato de cadena se implementan mediante el uso de marcadores de posición en la cadena. Los marcadores de posición comúnmente utilizados son "%s" y "%d", que se utilizan para formatear cadenas y números enteros respectivamente.
data = [
["Alice", 25],
["Bob", 30],
["Charlie", 35]
]
# 输出数据
for row in data:
print("Name: %-10s Age: %d" % (row[0], row[1]))
formato Carácter de formato hexadecimal
carácter de formato | expresar |
{:s} | cadena |
{:d} | entero decimal |
{:F} | punto flotante |
{:C} | tipo de caracter |
{:u} | entero decimal sin signo |
{:o} | octal |
{:X} | hexadecimal |
{:mi} | Notación cientifica |
Los siguientes son caracteres de formato comunes para formato
carácter de formato | expresar |
{:.2f} | dos decimales |
{:+.2f} | Mantenga dos decimales y lleve un cartel. |
{:0>2d} | Relleno de ceros a la izquierda, ocupando dos caracteres en total |
{:0<2d} | Relleno cero a la derecha, ocupando dos caracteres en total |
{:*<4d} | Se agrega un asterisco a la derecha y el total ocupa 4 caracteres. |
{:5d} | Alineado a la derecha, ocupando 5 caracteres en total |
{:<5d} | Alineado a la izquierda, 5 caracteres en total |
{:^5d} | Alineado al centro, ocupando 5 caracteres en total |
{:.2e} | notación científica con dos decimales |
{:,} | números separados por comas |