内容来源于网络,本人只是在此稍作整理,如有涉及版权问题,归小甲鱼官方所有。
练习题(来自小甲鱼官方论坛)
0. 根据说明填写相应的字符串格式化符号
符号 | 说明 |
---|---|
%c | 格式化字符及其ASCII码 |
%s | 格式化字符串 |
%d | 格式化整数 |
%o | 格式化无符号八进制数 |
%x | 格式化无符号十六进制数 |
%X | 格式化无符号十六进制数(大写) |
%f | 格式化定点数,可指定小数点后的精度 |
%e | 用科学计数法格式化定点数 |
%E | 作用同%e,用科学计数法格式化定点数 |
%g | 根据值的大小决定使用%f或者%e |
%G | 作用同%g,根据值的大小决定使用%F或者%E |
1. 请问以下这行代码会打印什么内容?
>>>"{{1}}".format("不打印", "打印")
答:'{1}'
2.以下代码中,a, b, c是什么参数?
>>> "{a} love {b}.{c}".format(a="I", b="FishC", c="com")
'I love FishC.com'
答:关键字参数
3. 以下代码中,{0}, {1}, {2}是什么参数?
>>> "{0} love {1}.{2}".format("I", "FishC", "com")
'I love FishC.com'
答:位置参数
4. 如果想要显示Pi = 3.14,format前边的字符串应该怎么填写呢?
' '.format('Pi = ', 3.1415
答:'{0}{1:.2f}'.format('Pi = ', 3.1415)
编程题
0.编写一个进制转换程序,程序演示如下(提示,十进制转换二进制可以用bin()这个BIF):
(图片转载https://blog.csdn.net/junwei0206/article/details/44757871)
答:
num = input("请输入一个整数(输入Q结束程序):")
while num.upper() != 'Q':
if num.isdigit():
num = int(num)
print('十进制 -> 十六进制:%d -> %#x'%(num,num))
print('十进制 -> 八进制:%d -> %#o'%(num,num))
print('十进制 -> 二进制:%d -> '%num,bin(num))
num = input("请输入一个整数(输入Q结束程序):")
else:
if num == 'Q':
break
else:
num = input("输入不合法,请输入一个整数(输入Q结束程序):")
1. 请写下这一节课你学习到的内容:格式不限,回忆并复述是加强记忆的好方式!
- 格式化操作符:%,具体见测试题
- format()方法:接受位置参数和关键字参数
>>> "{0} love {1}.{2}".format("I", "FishC", "com")
'I love FishC.com'
>>> "{a} love {b}.{c}".format(a = "I", b = "FishC", c = "com")
'I love FishC.com'
>>>
- 格式化操作符辅助指令
符号 | 说明 |
---|---|
m.n | m是显示的最小总宽度,n是小数点后的位数 |
- | 用于左对齐 |
+ | 在正数前面显示加号(+) |
# | 在八进制数前面显示 '0o',在十六进制数前面显示 '0x' 或 '0X' |
0 | 显示的数字前面填充 '0' 取代空格 |
>>> '%5.1f' % 27.678
' 27.7'
>>> '%.2e' % 27.6789
'2.77e+01'
>>> '%10d' % 5
' 5'
>>> '%-10d' % 5
'5 '
>>> '%010d' % 5
'0000000005'
>>> '% # x' % 100
'0x64'
- 字符串转义字符含义
符号 | 说明 |
---|---|
\' | 单引号 |
\" | 双引号 |
\a | 发出系统响铃声 |
\b | 退格符 |
\n | 换行符 |
\t | 横向制表符(TAB) |
\v | 纵向制表符 |
\r | 回车符 |
\f | 换页符 |
\o | 八进制数代表的字符 |
\x | 十六进制数代表的字符 |
\0 | 表示一个空字符 |
\\ | 反斜杠 |