百分号%在中主要是两个作用:数学运算符号和格式化输出。下文分别详细说明。

1、数学运算符号,求余数

在整数的除法中,有能整除与不能整除两种情况。所谓余数,余数指整数除法中被除数未被除尽部分,中余数的正负符号和被除数一致,如下例所示:

print(5%2)  #1
print((-5)%(-2)) #-1
print(-5%2)  #1
print(5%(-2)) #-1

2、格式化输出

在中,内置对字符串进行格式化的操作%,下面是%格式符的表达式:

%[(name)][flags][width].[]

表达式的解释如下:

%:格式化的起始标识

(name):可选,映射的key,比如字典

flag:可选,格式化操作符辅助符,含义分别为下表格所示

符号

含义

在八进制数前面显示零(0),在十六进制前面显示”0x”或者”0X”(取决于用的是”x”还是”X”)

显示的数字前面填充”0″而不是默认的空格

向右对齐,并在正数前面显示加号(+)

向左对齐

' '

正数前留空格

width:可选,最小字段宽度。如果指定为“*”,则默认需要有一个包含2个参数的元组,第一个参数是最小字段宽度,第二个字段为值。

.:可选,小数点位数,浮点数时生效。如果指定为“.*”,则默认需要有一个包含2个参数的元组,第一个参数是最小字段宽度,第二个字段为值。

:转换类型,各字符含义如下:

字符

含义

d/i/u

十进制整型

八进制

x/X

十六进制,大小写区分

e/E

转成科学计数法(e / E控制输出e / E)

f/F

十进制浮点型

单个字符

字符串

下方为代码实例:

neg_num=-34
pos_num=56
print('%d,%i,%u都是一样'%(neg_num,neg_num,neg_num)) #-34,-34,-34都是一样
print('%d,%i,%u都是一样'%(pos_num,pos_num,pos_num))#56,56,56都是一样
print('%d用八进制是%o,加入'#'后就是%#o'%(pos_num,pos_num,pos_num)) #56用八进制是70,加入'#'后就是0o70
print('%d用十六进制是%x,加入'#'后就是%#x'%(pos_num,pos_num,pos_num)) #56用十六进制是38,加入'#'后就是0x38
print('%d用科学计数法是%e,保留3位小数精度,就是%.3e'%(pos_num,pos_num,pos_num)) #56用科学计数法是5.600000e+01,保留3位小数精度,就是5.600e+01
print('%d用浮点数表示是%f,保留3位小数为%.3f'%(pos_num,pos_num,pos_num)) #56用浮点数表示是56.000000,保留3位小数为56.000
alpha='a'
st='good'
print('%c'%65)#A,整型会转换成ASCII值
print('%c'%alpha)#a
print('%s'%st)#good

复合型代码实例

num=[23,98,-345,-34]
print('限制最小宽度')
for i in num:
    print('%5d,'%i)
print('加上+号,右对齐,整数加+号')
for i in num:
    print('%+5d,'%i)
print('加上-号,左对齐')
for i in num:
    print('%-5d,'%i)
print('加上0,补齐位数')
for i in num:
    print('d,'%i)

代码执行后输出结果如下:

#输出
限制最小宽度
   23,
   98,
 -345,
  -34,
加上+号,右对齐,整数加+号
  +23,
  +98,
 -345,
  -34,
加上-号,左对齐
23   ,
98   ,
-345 ,
-34  ,
加上0,补齐位数
00023,
00098,
-0345,
-0034,

———END———
限 时 特 惠: 本站每日持续更新海量各大内部创业教程,永久会员只需109元,全站资源免费下载 点击查看详情
站 长 微 信: nanadh666

声明:1、本内容转载于网络,版权归原作者所有!2、本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。3、本内容若侵犯到你的版权利益,请联系我们,会尽快给予删除处理!