zoukankan      html  css  js  c++  java
  • 26【python】sprintf风格的字符串

    参考资料:https://docs.python.org/3.5/library/stdtypes.html#old-string-formatting

     实例

    s#!/bin/python
    
    a = ("year:%d model:%s") % (2018, 'BMW X5')
    print(a) #year:2018 model:BMW X5

    可以看到用这种类似于c语言中的printf函数,实现了字符串拼接,这个在实际应用中很常见,比如打日志,比如输出一段完整的内容,其中包含一些变量。

    按照%出现的顺序,依次和后面的参数对应起来,来实现字符串拼接。

    以下是一些提示

    提示1:

    前面出现的%必须和后边的参数个数保持一致,否则会报错:TypeError: not all arguments converted during string formatting

    提示2:

    这里如果输出%本身,需要用%来转义。

    a = ("%% year:%d model:%s") % (2018, 'BMW X5')

    提示3:

    支持的所有类型见表格:

    表示 含义 备注
    %d 整型  
    %i 整型  
    %u 整型 和%d一样
    %f 浮点数  
    %F 浮点数  
    %e 指数形式的整型  
    %E 指数形式的整型  
    %g 浮点数表示,精度太低,需要指数介入时会用到,e是小写的  
    %G 浮点数表示,精度太低,需要指数介入时会用到,e是大写的  
    %x 十六进制表示  
    %X 十六进制表示  
     %c char类型  必须是单个字符,否则报错 
    %o 八进制 这里是字母o
    %r 使用函数repr()来转化后的string  
    %s string类型,使用str()转换后的值  
    %a string,使用ascii(0函数转换后的值  

    以上是所有常用的类型。

    对于%d,支持类似于%3d(3位整型),'% 8d','%08d'这样的表示。

    类似的%f,也是一样的,支持%8.5f。

    其它格式见链接:https://docs.python.org/3.5/library/stdtypes.html#old-string-formatting

  • 相关阅读:
    new in swift
    Mac Git [remote rejected] master -> master (pre-receive hook declined) 解决方案
    Mac git 代码的Add 以及提交
    swift storyboard 跳转的2 种方式
    iOS 常用指令(svn cocoa pod)
    java面试题(晨星)
    谈Spring的理解
    软件产品开发文档大纲
    商城项目要点
    金蝶面试小记
  • 原文地址:https://www.cnblogs.com/helww/p/9906411.html
Copyright © 2011-2022 走看看