Hay varias formas de presentar la salida de un programa. Los datos se pueden imprimir en una forma legible por humanos, o escribirse en un archivo para uso futuro, o incluso en alguna otra forma específica. Los usuarios a menudo quieren más control sobre el formato de salida que simplemente imprimir valores separados por espacios. Hay varias formas de formatear la salida.
- Para usar literales de string formateados , comience una string con f o F antes de las comillas de apertura o las comillas triples.
- la calle El método format() de strings ayuda a un usuario a crear una salida más elegante
- Los usuarios pueden realizar todo el manejo de strings mediante el uso de operaciones de división y concatenación de strings para crear cualquier diseño que deseen los usuarios. El tipo de string tiene algunos métodos que realizan operaciones útiles para rellenar strings a un ancho de columna determinado.
Formato de salida usando el operador de módulo de string (%):
el operador % también se puede usar para formatear strings. Interpreta el argumento de la izquierda de forma muy parecida a un formato de estilo printf() como en las strings del lenguaje C que se aplicarán al argumento de la derecha. En Python, no existe la función printf() pero la funcionalidad del antiguo printf está contenida en Python. Con este propósito, la clase de string sobrecarga el operador de módulo % para realizar el formato de string. Por lo tanto, a menudo se le llama operador de módulo de string (o, a veces, incluso llamado módulo).
El operador de módulo de string ( % ) todavía está disponible en Python (3.x) y se usa ampliamente. Pero hoy en día, el antiguo estilo de formato se elimina del idioma.
Python3
# Python program showing how to use # string modulo operator(%) to print # fancier output # print integer and float value print("Geeks : %2d, Portal : %5.2f" % (1, 05.333)) # print integer value print("Total students : %3d, Boys : %2d" % (240, 120)) # print octal value print("%7.3o" % (25)) # print exponential value print("%10.3E" % (356.08977))
Producción :
Geeks : 1, Portal : 5.33 Total students : 240, Boys : 120 031 3.561E+02
Hay dos de ellos en nuestro ejemplo: «%2d» y «%5.2f». La sintaxis general para un marcador de posición de formato es:
%[flags][width][.precision]type
Echemos un vistazo a los marcadores de posición en nuestro ejemplo.
- El primer marcador de posición “%2d” se usa para el primer componente de nuestra tupla, es decir, el número entero 1. El número se imprimirá con 2 caracteres. Como 1 consiste solo en un dígito, la salida se rellena con 1 espacios en blanco iniciales.
- El segundo “%5.2f” es una descripción de formato para un número flotante. Al igual que otros marcadores de posición, se introduce con el carácter %. A esto le sigue el número total de dígitos que debe contener la string. Este número incluye el punto decimal y todos los dígitos, es decir, antes y después del punto decimal.
- Nuestro número flotante 05.333 debe formatearse con 5 caracteres. La parte decimal del número o la precisión se establece en 2, es decir, el número que sigue al “.” en nuestro marcador de posición. Finalmente, el último carácter «f» de nuestro marcador de posición significa «flotante».
Formato de salida usando el método de formato:
El método format() se agregó en Python (2.6). El método de formato de strings requiere más esfuerzo manual. Los usuarios usan {} para marcar dónde se sustituirá una variable y pueden proporcionar directivas de formato detalladas, pero el usuario también debe proporcionar la información que se va a formatear. Este método nos permite concatenar elementos dentro de una salida a través del formato posicional. Por ejemplo –
Código 1:
Python3
# Python program showing # use of format() method # using format() method print('I love {} for "{}!"'.format('Geeks', 'Geeks')) # using format() method and referring # a position of the object print('{0} and {1}'.format('Geeks', 'Portal')) print('{1} and {0}'.format('Geeks', 'Portal')) # the above formatting can also be done by using f-Strings # Although, this features work only with python 3.6 or above. print(f"I love {'Geeks'} for \"{'Geeks'}!\"") # using format() method and referring # a position of the object print(f"{'Geeks'} and {'Portal'}")
Producción :
I love Geeks for "Geeks!" Geeks and Portal Portal and Geeks
Los corchetes y caracteres dentro de ellos (llamados campos de formato ) se reemplazan con los objetos pasados al método format(). Se puede usar un número entre paréntesis para hacer referencia a la posición del objeto pasado al método format().
Código 2:
Python3
# Python program showing # a use of format() method # combining positional and keyword arguments print('Number one portal is {0}, {1}, and {other}.' .format('Geeks', 'For', other ='Geeks')) # using format() method with number print("Geeks :{0:2d}, Portal :{1:8.2f}". format(12, 00.546)) # Changing positional argument print("Second argument: {1:3d}, first one: {0:7.2f}". format(47.42, 11)) print("Geeks: {a:5d}, Portal: {p:8.2f}". format(a = 453, p = 59.058))
Producción:
Number one portal is Geeks, For, and Geeks. Geeks :12, Portal : 0.55 Second argument: 11, first one: 47.42 Geeks: 453, Portal: 59.06
El siguiente diagrama con un uso de ejemplo muestra cómo funciona el método de formato para parámetros posicionales:
Código 3:
Python3
# Python program to # show format() is # used in dictionary tab = {'geeks': 4127, 'for': 4098, 'geek': 8637678} # using format() in dictionary print('Geeks: {0[geeks]:d}; For: {0[for]:d}; ' 'Geeks: {0[geek]:d}'.format(tab)) data = dict(fun ="GeeksForGeeks", adj ="Portal") # using format() in dictionary print("I love {fun} computer {adj}".format(**data))
Producción:
Geeks: 4127; For: 4098; Geeks: 8637678 I love GeeksForGeeks computer Portal
Dar formato a la salida mediante el método String:
esta salida se formatea mediante operaciones de división y concatenación de strings. El tipo de string tiene algunos métodos que ayudan a formatear la salida de una manera más elegante. Algunos métodos que ayudan a formatear una salida son str.ljust() , str.rjust() y str.centre()
Python3
# Python program to # format a output using # string() method cstr = "I love geeksforgeeks" # Printing the center aligned # string with fillchr print ("Center aligned string with fillchr: ") print (cstr.center(40, '#')) # Printing the left aligned # string with "-" padding print ("The left aligned string is : ") print (cstr.ljust(40, '-')) # Printing the right aligned string # with "-" padding print ("The right aligned string is : ") print (cstr.rjust(40, '-'))
Producción:
Center aligned string with fillchr: ##########I love geeksforgeeks########## The left aligned string is : I love geeksforgeeks-------------------- The right aligned string is : --------------------I love geeksforgeeks
Publicación traducida automáticamente
Artículo escrito por ABHISHEK TIWARI 13 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA