pythonPython小哥哥Python

关于python字符串format的一些花式用法

2019-07-07  本文已影响136人  我爱学python

前提:

python中字符串的format功能非常强大,可以说完全能够替代其他的字符串使用方法,但是在后期的项目开发中使用的并不是特别的多,

以至于想用的时候会想不起来准确的使用方法,所以在这里汇总一下format的常用方法,方便以后查阅

基础

format的大括号用法可以实现字符串的拼接:

大括号内可以打乱顺序,根据{}里面的顺序写进format就好了:

保留输出的小数点位数

In [22]:'{:.2f}'.format(1.222)

Out[22]:'1.22'

限制输出数字的位数,也要保留小数位数

In [30]:'{:5.2f}'.format(1.222)

Out[30]:' 1.22'# 空格、一、小数点、二、二 共5位

千位分隔符号输出:

In [60]:'{:,}'.format(132456)

Out[60]:'132,456'

百分号输出:

在项目开发中常用到的输出技巧:

以及:

实战

给定一个数字 123456,请采用宽度为 25、右对齐方式打印输出,使用加号“+”填充。

In [57]:'{:+>25}'.format(123456)

Out[57]:'+++++++++++++++++++123456'

给定一个数字12345678.9,请增加千位分隔符号,设置宽度为30、右对齐方式打印输出,使用空格填充。 

In [59]:'{:>30,}'.format(13245678.9)

Out[59]:'                  13,245,678.9'

给定一个整数数字0x1010,请依次输出Python语言中十六进制、十进制、八进制和二进制表示形式,使用英文逗号分隔。

In [62]:'0x{0:x}, {0:}, 0o{0:o}, 0b{0:b}'.format(0x1010)

Out[62]:'0x1010, 4112, 0o10020, 0b1000000010000'

编写 Python 程序输出一个具有如下风格效果的文本,用作文本进度条样式,部分代码如下,填写空格处。

   10%@==

   20%@====

  100%@====================

  前三个数字,右对齐;后面字符,左对齐

文本中左侧一段输出的值,右侧一段根据的值输出等号,中间用 @ 分隔,等号个数为与 5 的整除商的值,例如,当等于 10 时,输出 2 个等号。

N = input()# N取值范围是0—100,整数print("{:>3}%@{}".format(N,"="*(N//5)))

根据输入字符串 s,输出一个宽度为 15 字符,字符串 s 居中显示,以“=”填充的格式。如果输入字符串超过 15 个字符,则输出字符串前 15 个字符。提示代码如下:

s=input()print(____①____)

 输入输出

示例 1PYTHON====PYTHON=====

s = input()# "请输入一个字符串:"print("{:=^15}".format(s[0:15]))

上一篇下一篇

猜你喜欢

热点阅读