【Python】只适用于字符串的操作符

1.1格式化操作符(%)

字符串格式化符号
格式化字符转换方式
%c转换成字符(ASCLL码值,或者长度为一的字符串)
%r(a)优先用repr()函数进行字符串转换
%s优先用str()函数进行字符串转换
%d/%i转换成有符号十进制数
%u(b)转换成无符号十进制数
%o(b)转换成无符号八进制数
%x(b)/%X(b)转换成无符号十六进制数(x/X代表转换后的十六进制字符的大小写)
%e/%E转换成科学计数法(e/E控制输出e/E)
%f/%F转换成浮点型(小数部分自然截断)
%g/%G%e和%f/%E和%F的简写
%%输出%

a.Python2.0新增
b.Python2.4里%u/%o/%x/%X在遇到负数的时候会返回一个有符号字符串 可以使用冒号来定义对齐方式:

Python支持两种格式输入参数。第一种是元组。第二种是字典形式。这种形式里面,键是作为格式字符串出现,相对应的值作为参数在进行转化时提供个格式字符串,格式字符串既可以跟print语句用来向终端用户输出数据,又可以用来合并字符串形成新的字符串,而且可以直接显示到GUI界面上去。

格式化操作符辅助指令
符号作用
*定义宽度或者小数点精度
-用作左对齐
+在正数前面显示加号(+)
[sp]在正数面前显示空格
‘#’在八进制数前面显示零‘0’,在十六进制前面显示‘0x’或者‘0X’(取决于用的是x还是X)
0显示的数字前面填充‘0’而不是默认的空格
%‘%%’输出一个单一的‘%’
(var)映射变量(字典参数)
m.nm是显示的最小总宽度,n是小数点后的位数(如果可用的话)

1.2使用格式化字符串的例子

1.2.1十六进制输出

>>>"%x" % 108
'6c'
>>>"%X" % 108
'6C'
>>>"%#x" % 108
'0x6c'
>>>"%#X" % 108
'0X6C'

1.2.2浮点型和科学计数法形式输出

>>>'%f' % 1234.567890
'1234.56780'
>>>'%.2f' % 1234.56780
'1234.57'
>>>'%E' % 1234.567890
'1.234568e+03'
>>>'%e' % 1234.56780
'1.234568e+03'
>>>'%g' % 1234.567890
'1234.57'
>>>'%G' % 1234.567890
'1234.57'
>>>"%e" % (111111111111111111L)
'1.111111e+17'

1.2.3整型和字符串输出

>>>"%+d" % 4
'+4'
>>>"%+d" % -4
'-4'
>>>"we are at %d%%" %  100
'we are at 100%'
>>>'Your host is: %s' % 'earth'
'Your host is:earth'
>>>'Host: %s Port: %d' % ('mars',80)
'Host:mars Port: 80'
>>>num=123
>>>'dec: %d/oct: %#o/hex: %#X' % (num,num,num)
'dec: 123/oct: 0173/hex: 0X7B'
>>>"MM/DD/YY=%02d/%02d/%d" % (2,15,67)
'MM/DD/YY=02/15/67'
>>>w,p='Web','page'
>>>'http://xxx.yyy.zzz/%s/%s.html' % (w,p)
'http://www.yyy.zzz/Web/page.html'

上面的例子都是使用的元组类型的参数作转换。下面我们将吧字典类型的参数提供给格式化操作符。

>>>'There are %(howmany)d % (lang)s Quotaion Symbols' % \
...('lang':'Python','howmany':3)
'There are 3 Python Quotation Symbols'

1.3 调试工具

所有的python对象都有一个字符串表现形式(通过repr()函数,或者str()函数来展现)。print 语句自动为每个对象调用str()函数。在定义自己的对象时,可以为自己的对象创建字符串表达形式。这样,repe(),str()或者print被调用时,就可以获得一个适当的字符串描述信息。当他们不能显示一个对象的信息时,“Pythonic”的默认做法可以返回

<...something that is useful...>.
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值