@[Toc] 这篇文章整理计算机二级Python中关于format格式化输出的例题,并给出详细解析与运行结果。
==print("{格式}".format(内容))==
类型里面:
x:十六进制小写
第二题
题目:
解析:
- n = eval(input("请输入一个数字:"))
如果键盘输入123,经过input---"123",再经过eval---123。 - chr()函数是输入一个整数(0-255)返回其对应的ascii符号或者unicode编码,例如:
>>> chr(100)
'd'
>>> chr(53)
'5'
- ord()函数是用来返回单个字符的ascii值(0-255)或者unicode数值()。例如:
>>> ord('d')
100
>>> ord('5')
53
==print("{格式}".format(内容))==
格式:==:+^11== 。从左到右依次为引导符号、加号字符+填充、居中对齐、宽度为11个字符。 内容:==chr(n-1)+chr(n)+chr(n+1)== 。使用chr()将数字转为Unicode编码,并用加号把n-1、 n和n+1三个连接起来。 所以答案为: print("{==:+^11==}".format(==chr(n-1)+chr(n)+chr(n+1)==))
答案:
# 请在______处使用一行代码或表达式替换
# 注意:请不要修改其他已给出代码
n = eval(input("请输入一个数字:"))
print("{:+^11}".format(chr(n-1)+chr(n)+chr(n+1)))
运行结果:
第三题
题目:
解析:
- 这里考察格式: ==:->20,== 从左到右依次为引导符号、字符-填充、右对齐、宽度为20个字符、千位分隔符。
答案:
# 请在______处使用一行代码或表达式替换
# 注意:请不要修改其他已给出代码
n = eval(input("请输入正整数:"))
print("{:->20,}".format(n))
运行结果:
第八题
题目:
解析:
- 这里考察格式: ==:=^20== 从左到右依次为引导符号、字符=填充、居中对齐、宽度为20个字符。
答案:
# 请在______处使用一行代码或表达式替换
# 注意:请不要修改其他已给出代码
s = input("请输入一个字符串:")
print("{:=^20}".format(s))
运行结果:
第十三题
题目:
解析:
-
- 这里考察格式: ==:*>15== 从左到右依次为引导符号、字符*填充、右对齐、宽度为15个字符。
答案:
# 请在______处使用一行代码或表达式替换
# 注意:请不要修改其他已给出代码
n = eval(input("请输入正整数:"))
print("{:*>15}".format(n))
运行结果:
第十六题
题目:
解析:
- 这里考察格式: ==:=^14== 从左到右依次为引导符号、字符=填充、居中对齐、宽度为14个字符。 答案:
# 请在______处使用一行代码或表达式替换
# 注意:请不要修改其他已给出代码
n = eval(input("请输入正整数:"))
print("{:=^14}".format(n))
运行结果:
第十九题
题目:
解析:
- 第一空考察格式: ==:=>25,== 从左到右依次为引导符号、字符=填充、右对齐、宽度为25个字符,带千位分隔符。
- 第二空易错!!! 这里不能直接填入 s , input得到的结果是字符串,需要 用**==eval(s)==**把字符串变成数字。
答案:
# 请在______处使用一行代码或表达式替换
# 注意:请不要修改其他已给出代码
s = input()
print("{:=>25,}".format(eval(s)))
运行结果:
第二十二题-进阶
题目:
解析:
- 第一空考察格式: ==:"^30x== 从左到右依次为引导符号、字符"填充(注意前面的斜杠是转义字符,用"本身去填充)、居中对齐、宽度为25个字符,x:十六进制小写。
- 第二空与19题一样,**==eval(s)==**把字符串变成数字。
答案:
s = input()
print("{:\"^30x}".format(eval(s)))
运行结果:
第二十八题
题目:
解析:
- 第一空 输出多少行就要遍历多少次 :==eval(n)==
- 第二空 ==print("{格式}".format(内容))== 格式:==:02 {}== 。从左到右依次为引导符号、0填充、宽度为2字符、追加一个空格。 内容:=='>'*(i+1)== 。题目要求显示'>'号,'>'号的个数等于行数,所以。 所以答案为: print('{==:02 {}==}'.format(=='>'*(i+1)== ))
答案:
n = input('请输入一个正整数:’)
for i in range (1,eval(n)):
print('{:02} {}'.format(i,'>'*(i+1)))
或者
运行结果:
第三十一题
题目:
解析:
- int(c),字符串强转为整数类型。
答案:
运行结果:
第三十四题
题目:
解析:
- 下面出现cs累加,所以第一空初始化:==cs == 0==
- 浮点数小数部分和:逆序遍历 到 小数点跳出循环,所以第二空 ==break==
- 格式化输出:{==:*>10==}
答案:
运行结果:
第三十九题-format保留2位小数点
题目:
解析:
- 第一空s初始化,==s[]==
- 第二空判断是否为奇数:==n%2==1==
- 第三空输出s并保留2位小数:print(=='{:.2f}'.format(f(n))==)
- 小数点后保留两位小数,是浮点数类型。
答案:
运行结果: