python中格式化输出字符,Python 字符串格式化,%格式符,大家举例看看

  python中格式化输出字符,Python 字符串格式化,%格式符,大家举例看看

  Python提供了" % "来打印格式各种类型的数据,例如下面的代码:

  价格=108

  print( book sprice is % s % price)上面程序中的打印函数包含以下三个部分。第一部分是格式化字符串(相当于字符串模板),包含一个“%s”占位符,第三部分将被替换为变量或表达式的值;第二部分使用“%”作为分隔符。

  格式化字符串中的“%s”称为转换说明符,它充当占位符,将被后面的变量或表达式的值替换。“%s”指定使用str()函数将变量或值转换为字符串。

  如果格式字符串包含多个“%s”占位符,第三部分也应该相应地提供多个变量,并用括号将这些变量括起来。例如,下面的代码:

  user=Charli

  年龄=8岁

  #格式字符串有两个占位符,第三部分提供两个变量

  打印( %SISA% Syearsoldboy%(用户,年龄))只能在格式字符串中使用“%s”吗?还有其他转换说明符吗?如果" %s "是唯一的形式,那Python的格式化功能就太简单了。

  实际上,Python提供了如下转换说明符:

  转换说明符%d的说明,%i被转换为有符号十进制形式的整数%o被转换为有符号八进制形式的整数%x,而%X被转换为有符号十六进制形式的整数%e被转换为科学记数法中的浮点数(E小写)%E被转换为科学记数法中的浮点数(E大写)%f, 将%F转换为十进制浮点数%g智能选择format %f或%e %G智能选择format %F或%E %c格式化字符及其ASCII代码%r将变量或表达式转换为字符串%s使用str()将变量或表达式转换为字符串。 使用上述转换说明符时,可以指定转换后的最小宽度,如以下代码所示:

  数字=-28

  打印( numis:%6i%num )

  打印( numis:m%num )

  打印( numis:%6o%num )

  打印( numis:%6x%num )

  打印( numis:%6X%num )

  Print(numis:%6s%num )运行上面的代码,您可以看到以下输出结果:

  numis:-28

  numis:-28

  numis:-34

  numis:-1c

  numis:-1C

  numis:-28

  pre>从上面的输出结果可以看出,此时指定了字符串的最小宽度为 6,因此程序转换数值时总宽度为 6,程序自动在数值前面补充了三个空格。

  在默认情况下,转换出来的字符串总是右对齐的,不够宽度时左边补充空格。Python 也允许在最小宽度之前添加一个标志来改变这种行为,Python 支持如下标志:

  -:指定左对齐。

  +:表示数值总要带着符号(正数带“+”,负数带“-”)。

  0:表示不补充空格,而是补充 0。

  例如如下代码

  

num2=30

  #最小宽度为0,左边补0

  print("num2is:%06d"%num2)

  #最小宽度为6,左边补0,总带上符号

  print("num2is:%+06d"%num2)

  #最小宽度为6,右对齐

  print("num2is:%-6d"%num2)

运行上面代码,可以看到如下输出结果:

  

num2is:000030

  num2is:+00030

  num2is:30

对于转换浮点数,Python 还允许指定小数点后的数字位数:如果转换的是字符串,Python 允许指定转换后的字符串的字符数。这个标志被称为精度值,该精度值被放在最小宽度之后,中间用点 () 隔开。例如如下代码:

  

my_value=3.001415926535

  #最小宽度为8,小数点后保留3位

  print("my_valueis:%8.3f"%my_value)

  #最小宽度为8,小数点后保留3位,左边补0

  print("my_valueis:%08.3f"%my_value)

  #最小宽度为8,小数点后保留3位,左边补0,始终带符号

  print("my_valueis:%+08.3f"%my_value)

  the_name="Charlie"

  #只保留3个字符

  print("thenameis:%.3s"%the_name)#输出Cha

  #只保留2个字符,最小宽度10

  print("thenameis:%10.2s"%the_name)

运行上面代码,可以看到如下输出结果:

  

my_valueis:3.001

  my_valueis:0003.001

  my_valueis:+003.001

  thenameis:Cha

  thenameis:Ch

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • 使用js实现数据格式化命令,使用js实现数据格式化的方法
  • 使用js实现数据格式化命令,使用js实现数据格式化的方法,使用js实现数据格式化
  • sql 时间格式化函数怎么用,sqlserver时间格式化函数
  • sql 时间格式化函数怎么用,sqlserver时间格式化函数,SQL 时间格式化函数
  • Linux磁盘格式化命令,linux格式化整个磁盘的命令
  • Linux磁盘格式化命令,linux格式化整个磁盘的命令,Linux磁盘格式化命令详解
  • js获取当前日期并格式化,js获取当前时间年月日并输出
  • js获取当前日期并格式化,js获取当前时间年月日并输出,JS获取当前时间的年月日时分秒及时间的格式化的方法
  • js格式化时间的方法是什么,js 格式化时间
  • js格式化时间的方法是什么,js 格式化时间,js格式化时间的方法
  • js格式化时间格式,js格式化时间字符串
  • js格式化时间格式,js格式化时间字符串,JS格式化时间的几种方法总结
  • js中时间格式化的几种方法有哪些,js中时间格式化的几种方法是什么
  • js中时间格式化的几种方法有哪些,js中时间格式化的几种方法是什么,js中时间格式化的几种方法
  • windows命令行格式化硬盘,格式化将清除磁盘中的所有文件
  • 留言与评论(共有 条评论)
       
    验证码: