python之字符串类型的格式化

要点:python字符串通过format()方法进行格式化处理。(Python语言同时支持两种字符串格式化方法,一种类似C语言中printf()函数的格式化方法,支持该方法主要考虑与大批C语言程序员编程习惯相一致;另一种采用专门的str.format()格式化方法。由于Python中更为接近自然语言的复杂数据类型(如列表和字典等)无法通过类C的格式化方法很好表达,Python 已经不在后续版本中改进C风格格式化方法。因此,Python 语言将主要采用format()方法进行字符串格式化。)

字符串format()方法的基础使用格式是:

<模板字符串>. format (<逗号分隔的参数>)    示例如下:

在这里我们可以看出,如果大括号中指定了使用参数的序号,按照序号对应参数也替换  *参数从0开始编号

另外,大括号{}本身也是字符串的一部分,如果需要输出{}则需要注意

通俗点讲,由上示例可以看出{1}输出:1        {{{1}}}输出:{1}

format()方法中模板字符串的槽除了包括参数序号,还可以包括格式控制信息。此时,槽的内部样式如下:
{<参数序号>: <格 式控制标记>}
<,内容左对齐
>,内容右对齐(默认)
=,内容右对齐,将符号放置在填充字符的左侧,且只对数字类型有效。 即使:符号+填充物+数字
^,内容居中对齐

(1)num = "{0:.2f}".format(123456.789132)

print(num)

# 123456.79

(2)num = "{0:b},{0:c},{0:d},{0:o},{0:x},{0:X}".format(42500)             # {0:b}二进制格式,{0:c}Unicode编码形式,{0:d}十进制表示形式,{0:o}八进制,{0:x}十六进制,                                                                                                                  {0:X}大写的十六进制

print(num)

         # 1010011000000100,ꘄ,42500,123004,a604,A604

(3)num = "{0:e},{0:E},{0:F},{0:%}".format(45.6)               # {0:e}科学计数法e表示,{0:E}科学计数法E表示,{0:F}通常非科学计数法

print(num)

# 4.560000e+02,4.560000E+02,456.000000,45600.000000%

最新文章

  1. Oracle常用函数汇总
  2. java.io中的System.in、 System.out和System.err
  3. WINCE 获取智能设备唯一编号
  4. 对C#对象的Shallow、Deep Cloning认识【转】
  5. Node.js模块 加载笔记
  6. HNCU1101:马的移动(BFS)
  7. 关于php的一些安全知识
  8. Win10 UWP开发系列:解决Win10不同版本的Style差异导致的兼容性问题
  9. 雷林鹏分享:jQuery EasyUI 数据网格 - 设置排序
  10. 信用评分卡 (part 1 of 7)
  11. Light OJ 1116
  12. 数组去重Demo引出的思考
  13. line-height的理解
  14. java 调用c++程序实例
  15. Spark记录-spark报错Unable to load native-hadoop library for your platform
  16. C#验证中文
  17. Arithmometer: A Node.js implementation
  18. const修饰的成员是类成员,还是实例成员?
  19. blender, knife工具
  20. EAIntroView–高度可定制的iOS应用欢迎页通用解决方案

热门文章

  1. Maven 3.6.1 下载及安装配置
  2. kotlin中访问封闭作用内的变量
  3. kotlin创建类的实例
  4. vue 调用微信支付方法
  5. ubuntu tensorflow cpu faster-rcnn train data
  6. PAT 甲级 1029 Median (25 分)(思维题,找两个队列的中位数,没想到)*
  7. 分组卷积+squeezenet+mobilenet+shufflenet的参数及运算量计算
  8. 【leetcode】521. Longest Uncommon Subsequence I
  9. vim复制粘贴导致多行出现#号解决办法
  10. EMC DS300B光纤交换机扩展光口license