第015讲:字符串:格式化

目录

测试题

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

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

2. 以下代码中,a, b, c是什么参数?

3. 以下代码中,{0}, {1}, {2}是什么参数?

4. 如果想要显示Pi = 3.14,format前边的字符串应该怎么填写呢?

动动手

0. 编写一个进制转换程序,程序演示如下(提示,十进制转换二进制可以用bin()这个BIF):

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


测试题

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

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

>>> "{{1}}".format("不打印", "打印")
>>> "{{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)
'Pi = 3.14'

动动手

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

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

(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'

结合位置参数和关键字参数:

在这种情况下,位置参数必须在关键字参数之前,如:

>>> "{0} love {b}. {c}".format("I", b="FishC", c="com")
           'I love FishC. com'

如果位置参数之前出现了关键字参数,就会报错。如:

>>> "{a} love {0}. {c}".format(a="I", "FishC", c="com")
            SyntaxError: positional argument follows keyword argument

format()用于保留几位有效数字:

>>> '{0:.1f}'.format(27.678)
            '27.7'

等价于

>>> '%.1f' %27.555
           '27.6'

(2)字符串格式化符号及其含义

符号

说明

%c

格式化字符及其 ASCII 码

%s

格式化字符串

%d

格式化整数

%o

格式化无符号八进制数

%x

格式化无符号十六进制数

%X

格式化无符号十六进制数(大写)

%f

格式化浮点数字,可指定小数点后的精度

%e

用科学计数法格式化浮点数

%E

作用同 %e,用科学计数法格式化浮点数

%g

根据值的大小决定使用 %f 或 %e

%G

作用同 %g,根据值的大小决定使用 %f 或者 %E

(3)格式化操作符辅助命令

符号

说明

m.n

m 是显示的最小总宽度(如果整个输出的长度长度小于m,默认在左边补空格),n 是小数点后的位数

-

用于左对齐

+

在正数前面显示加号(+)

#

在八进制数前面显示 '0o',在十六进制数前面显示 '0x' 或 '0X'

0

显示的数字前面填充 '0' 取代空格

(4)字符串转义字符

符号

说明

\'

单引号

\"

双引号

\a

发出系统响铃声

\b

退格符

\n

换行符

\t

横向制表符(TAB)

\v

纵向制表符

\r

回车符

\f

换页符

\o

八进制数代表的字符

\x

十六进制数代表的字符

\0

表示一个空字符

\\

反斜杠

猜你喜欢

转载自blog.csdn.net/qq_41556318/article/details/84072944