小甲鱼python零基础015格式化

一、测试题

0. 根据说明填写相应的字符串格式化符号

符号说明
 格式化字符及ASCII码
 格式化字符串
 格式化整数
 格式化无符号八进制数
 格式化无符号十六进制数
 格式化无符号十六进制数(大写)
 格式化定点数,可制定小数点后的精度
 用科学计数法格式化定点数
 作用同%e,用科学计数法格式化定点数
 根据值的大小决定使用%f或者%e
 作用同%g,根据值的大小决定使用%F或者%E

1. 请问以下这行代码会打印什么内容?

>>>"{{1}}".format("不打印", "打印")

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.编写一个进制转换程序,程序演示如下(提示,十进制转换二进制可以用bin()这个BIF):

(图片转载https://blog.csdn.net/junwei0206/article/details/44757871

1. 请写下这一节课你学习到的内容:格式不限,回忆并复述是加强记忆的好方式!


三、我的答案

0.   使用格式化符号的原理是将%右边的对象用%左边的格式表示出来。小甲鱼:格式化符号的使用有点像print

符号说明示例
%c格式化字符及ASCII码>>> '%c' % 107
'k'
>>> '%c %c %c' % (98, 99, 100)
'b c d'
%s格式化字符串>>> '%s' % 'I love fishc'
'I love fishc'
%d格式化整数>>> '%d + %d = %d' % (4, 5, 4+5)
'4 + 5 = 9'
%o格式化无符号八进制数>>> '%o' % 10
'12'
%x格式化无符号十六进制数>>> '%x' % 10
'a'
%X格式化无符号十六进制数(大写)>>> '%X' % 10
'A'
%f格式化定点数,可制定小数点后的精度

>>> '%f' % 27.658
'27.658000'

>>> '%.2f' % 27.658
'27.66'

%e用科学计数法格式化定点数>>> '%e' % 27.658
'2.765800e+01'
%E作用同%e,用科学计数法格式化定点数>>> '%.3E' % 27.658
'2.766E+01'
%g根据值的大小决定使用%f或者%e>>> '%g' %27.658
'27.658'
%G作用同%g,根据值的大小决定使用%F或者%E>>> '%G' % 27.658
'27.658'

1. 

>>> "{{1}}".format("不打印", "打印")
'{1}'       #因为位置参数被注释掉了,元组中两个文字都不会打印
>>> "{1}".format("不打印", "打印")
'打印'     #位置参数为1,在元组中“打印”的位置刚好是1,故会打印出“打印”

2. a, b, c 是关键字参数

3.  0, 1, 2是位置参数

4. 

>>>"{0}{1}".format('Pi = ', 3.1415)

'Pi = 3.1415'

二、

0. 程序如下:

while 1:
    print('请输入一个整数(输入Q结束程序):', end = ' ')
    temp = input()
    if (temp.isspace()) or (len(temp) == 0):
        print('输入不能为空!')
        continue
    if temp.isdigit() != True:
        print('非法输入!')
        continue
    if temp == 'Q':
        break
    deci = int(temp)
    hexa = '%#x' % deci
    octo = '%#o' % deci
    bina = bin(deci)
    print('十进制 -> 十六进制'+' : ',deci,' -> '+hexa)
    print('十进制 -> 八进制'+' : ',deci,' -> '+octo)
    print('十进制 -> 二进制'+' : ',deci,' -> '+bina)

1. 课堂重点:

  • fomat接受位置参数和关键字参数,二者均传入到replacement字段中(用花括号表示)。比如:“{0} love {1}.{2}”.format(''I'', "FishC", "com")    0,1,2是位置参数; 又如:“{a} love {b}.{c}”.format(a=''I'', b="FishC", c="com")
    关键字参数:a,b,c
  • 混合参数:位置参数必须在关键字参数之前!
    “{0} love {b}.{c}”.format(''I'', b="FishC", c="com")  
  • 打印花括号:"{{0}}".format("不打印")
    花括号嵌套花括号,会打出{0},且"不打印"不会出现。
  • 格式化操作符辅助命令 常和 字符串格式化符号 配合使用。在此举几个例子:
>>> '%7.2f' % 27.658        #m.n (m是控制输出的最小长度,.n是控制保留的小数位数)
'  27.66'
>>> '%10d' % 5              #10控制字符长度
'         5'
>>> '%-10d' % 5             #-号左对齐,长度10
'5         '
>>> '%+10d' % 5             #+号右对齐,并在正数前加上符号+,长度10
'        +5'
>>> '%+10d' % -5            #+号右对齐,负数前不加+号,长度10
'        -5'
>>> '%#o' % 10              # 井号使八进制、十六进制数前面加上标识符
'0o12'
>>> '%#X' % 10
'0XA'
>>> '%#d' % 10              # 井号对本来就是10进制的数没有作用
'10'
>>> '%010d' % 5             # 0表示空格的地方用0代替
'0000000005'
>>> '%-010d' % 5            # 0前加-号,表示左对齐,0被抑制,因为数值要与之前的一致
'5         '

四、参考答案:https://www.jianshu.com/p/e9b8240a9109

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值