测试题
0. 根据说明填写相应的字符串格式化符号
%c 格式化字符及其ASCII码
%s 格式化字符串
%d 格式化整数
%o 格式化无符号八进制数
%x 格式化无符号十六进制数
%X 格式化无符号十六进制数(大写)
%f 格式化定点数,可指定小数点后的精度
%e 用科学计数法格式化定点数
%g 根据值的大小决定使用%f或者%e
%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)
5. 位置参数必须在关键字参数之前
"{a} love {b} {0}".format(a="i",b="you","too")#这样是错的,此时不知道把"too"解释给谁
"{0} love {a} {b}".format("i",a="you",b="too")#正确
6. 怎么打印花括号?
#首先回顾一下怎么打印出转移符\
print("\n")
#从这里可以得到提示怎么打印出花括号
>>> "{{0}}".format("")
'{0}'
可以发现{}中已经是确定值,所以不会输出format中的参数解释
7. 数据的格式化( format 和 %)
使用format格式化
>>> "{0:.1f}{1}".format(27.658,"GB")
'27.7GB' #0代表位置参数 这里的f前面不用加%
在替换域中(即 花括号{}中的内容), 冒号 :表示格式化符号(相当于%f %d等等)的开始,它后面就是格式化符号;其中.1表示四舍五入的保留1位小数
使用%进行格式转换
"%c" % 97
'a'
#如果用format就是
>>> "{:c}".format(97)
'a'
有多个参数要用元组把它们括起来
"%c %c %c" % (97 ,98 ,99)
'a' 'b' 'c'
小数点左边表示占位,右边表示保留小数位数,如果加上负号代表左对齐
>>> '%10d'%5
' 5'
>>> '%-10d'%5
'5 '
[编程题]编写一个进制转换程序,程序演示如下(提示,十进制转换二进制可以用bin()这个BIF):
num=""
while 1:
num=input("请输入: ")
if num!='Q':
num=int(num)
print('十进制 -> 十六进制 : %d ->%#x'% (num,num))
print('十进制 -> 八进制 : %d ->%#o'% (num,num))
print('十进制 -> 二进制 : %d ->%s'% ( num,bin(num) ) )
else:
break;
请写下这一节课你学习到的内容:格式不限,回忆并复述是加强记忆的好方式!