版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xyyojl/article/details/81210984
知识点总结
format()
- format()方法接受位置参数和关键字参数(),二者均传递一个叫做replacement字段
- 位置参数:
"{0} love {1}.{2}".format("I","FishC","com")
- 关键字参数:
"{a} love {b}.{c}".format(a="I",b="FishC",c="com")
- 综合位置参数和关键字参数(位置参数一定在关键字之前):
"{0} love {b}.{c}".format("I",b="FishC",c="com")
- 错误写法:
"{a} love {b}.{0}".format(a="I",b="FishC","com")
- 把大括号打印出来的方法:
"{{0}}".format("不打印")
- 又一例子:
"{0}:{1:.2f}".format("圆周率",3.14159)
,冒号表示格式化符号的开始,”.2”的意思是四舍五入到保留两位小数点,而f的意思是定点数
格式化操作符:%
- 例子1:
"%c"%97
- 例子2:
"%c %c %c"%(97,98,99)
- 例子3:
"%d转换为八进制是:%o"%(123,123)
- 例子1:
Python格式化符号及含义
符号 | 含义 |
---|---|
%c | 格式化字符及其ASCII码 |
%s | 格式化字符串 |
%d | 格式化整数 |
%o | 格式化无符号八进制数 |
%x | 格式化无符号十六进制数 |
%X | 格式化无符号十六进制数(大写) |
%f | 格式化浮点数字,可指定小数点后的精度 |
%e | 用科学计数法格式化浮点数 |
%E | 作用同%e,用科学计数法格式化浮点数 |
%g | 根据值的大小决定使用%f或%e |
%G | 作用同%g,根据值的大小决定使用%f或%e |
- 格式化操作符的辅助指令
- 例子1:"5.1f"%27.658
- 例子2:"%10d"%5
- 例子3:"%#X"%100
符号 | 含义 |
---|---|
m.n | m是显示的最小总宽度,n是小数点后的位数 |
- | 结果左对齐 |
+ | 在正数前面显示加号(+) |
# | 在八进制前面显示’0o’,在十六进制数前面显示’0x64’或’0X64’ |
0 | 显示的数字掐面填充的’0’代替空格 |
- python的转义字符及含义
符号 | 说明 |
---|---|
\' |
单引号 |
\" |
双引号 |
\a | 发出系统响铃声 |
\b | 退格符 |
\n | 换行符 |
\t | 横向制表符(Tab) |
\v | 纵向制表符 |
\r | 回车符 |
\f | 换页符 |
\o | 八进制代表的字符 |
\x | 十六进制代表的字符 |
\0 | 表示一个空字符 |
\\ |
反斜杠 |
课后习题
测试题
题1: 根据说明填写相应的字符串格式化符号
符号 | 说明 |
---|---|
%c | 格式化字符及其ASCII码 |
%s | 格式化字符串 |
%d | 格式化整数 |
%o | 格式化无符号八进制数 |
%x | 格式化无符号十六进制数 |
%X | 格式化无符号十六进制数(大写) |
%f | 格式化浮点数字,可指定小数点后的精度 |
%e | 用科学计数法格式化浮点数 |
%E | 作用同%e,用科学计数法格式化浮点数 |
%g | 根据值的大小决定使用%f或%e |
%G | 作用同%g,根据值的大小决定使用%f或%e |
题2: 请问以下这行代码会打印什么内容?
>>> "{{1}}".format("不打印", "打印")
'{1}'
题3: 以下代码中,a, b, c是什么参数?
>>> "{a} love {b}.{c}".format(a="I", b="FishC", c="com")
'I love FishC.com'
题4: 以下代码中,{0}, {1}, {2}是什么参数?
>>> "{0} love {1}.{2}".format("I", "FishC", "com")
'I love FishC.com'
题5: 如果想要显示Pi = 3.14,format前边的字符串应该怎么填写呢?
>>> '{0}{1:.2f}'.format('Pi = ', 3.1415)
'Pi = 3.14'
动动手
题1: 编写一个进制转换程序,程序演示如下(提示,十进制转换二进制可以用bin()这个BIF):
q = True
while q:
num = input('请输入一个整数(输入Q结束程序):')
if num != 'Q':
num = int(num)
print('十进制 -> 十六进制: %d -> 0x%x'%(num,num))
print('十进制 -> 八进制: %d -> 0o%o'%(num,num))
print('十进制 -> 二进制: %d -> '%num,bin(num))
else:
q = False