手机
当前位置:查字典教程网 >脚本专栏 >python >python 字符串格式化代码
python 字符串格式化代码
摘要:格式汇总:格式描述格式描述%%百分号%标记(多出来的%是转义作用)%c字符及其ASCII码%s字符串%d有符号整数(十进制)%u无符号整数(...

格式汇总:

格式 描述 格式 描述
%% 百分号%标记(多出来的%是转义作用)
%c 字符及其ASCII码 %s 字符串
%d 有符号整数(十进制) %u 无符号整数(十进制)
%o 无符号整数(八进制)
%x 无符号整数(十六进制) %X 无符号整数(十六进制大写字符)
%e 浮点数字(科学计数法) %E 浮点数字(科学计数法,用E代替e)
%f 浮点数字(用小数点符号)
%g 浮点数字(根据值的不同自动选择%e或%f) %G 浮点数字(类似于%g,根据值的不同自动选择%E或%f)
%p 指针(用十六进制打印值的内存地址) %n 存储输出字符的数量放进参数列表的下一个变量中

不过由于在python中,所有东西都可以转换成string类型,因此,如果没有什么特殊需求完全可以全部使用'%s‘来标记。

比如:'%s %s %s' % (1, 2.3, ['one', 'two', 'three'])

它的输出为'1 2.3 ['one', 'two', 'three']',就是按照%左边的标记输出的。

虽然第一个和第二值不是string类型,一样没有问题。

[在这个过程中,当电脑发现第一个值不是%s时,会先调用整型数的函数,把第一个值也就是1转成string类型,然后再调用str()函数来输出。]

上面说的只是格式标记的最简间的形式,来看复杂一点的:

制定输出长度:

‘%6.2f' % 1.235

在这种形式中,在f的前面出现了一个类似小数的6.2它表示的意思是,总共输出的长度为6个字符,其中小数2位。

还有更复杂的:

占位符:

‘%06.2f' % 1.235

在6的前面多了一个0,表示如果输出的位数不足6位就用0补足6位。

这一行的输出为‘001.24',可以看到小数也占用一位。

类似于这里0这样的标记还有-、+。其中,-表示左对齐,+表示在正数前面也标上+号,默认是不加的。

实例:

%ns:如果字符串变量s不足n位的话,会先输出若干个空格后再输出str1

%-ns:与上述相反,先输出变量s,不足的然后用空格在后面补齐。

其他:

字典格式化输出:

‘%(name)s:%(score)06.1f' %{'score':9.5, 'name':'newsim'}

这种形式只用在要输出的内容为dictionary时。小括号中的(name)和(score)对应于后面的键值对中的键。

有时候在%6.2f这种形式中,6和2也不能事先指定,会在程序运行过程中再产生,那怎么输入呢,当然不能用%%d.%df或%d.%d%f。

可以用%*.*f的形式,当然在后面的”要输出的值组“中包含那两个*的值。

比如:'%*.*f' % (6, 2, 2.345)就相当于'%6.2f' % 2.345。

不过如果记不住,或不想那么耐烦,完全可以全部用%s代替,或者用多个"+"来构造类似的输出字符串。

【python 字符串格式化代码】相关文章:

Python模块学习 datetime介绍

Python字符转换

python 多线程应用介绍

python cookielib 登录人人网的实现代码

python的几种开发工具介绍

python 提取文件的小程序

Python 文件操作实现代码

Python 连接字符串(join %)

Python内置的字符串处理函数整理

python设置windows桌面壁纸的实现代码

精品推荐
分类导航