字符串的格式化
按照统一的规格输出(转换为指定格式)
format函数
>>> "{0}eaea{1}".format('a','c')
'aeaeac
%“位置参数”format(关键字参数)
"{a}".foamat(a='c')
%另一种方法
>>> "{0:.1f}".format(27.32421421)
'27.3'
%0代表位置参数 .1指宽度不定义,小数点后留一位 27.32421421指关键字
字符串格式化方法
格式:
>>> '%c' %97
'a'
>>> '%c %c %c' %(97,98,99)
'a b c'
>>> '%d+%d=%d' %(4,5,9)
'4+5=9'
>>> '%o'%10
'12'
>>> '%X' %16
'10'
>>> '%f' %27.658
'27.658000'
>>> '%e' %27.658
'2.765800e+01'
>>> '%g' %27.658
'27.658'
>>>
格式化操作辅助命令
>>> '%c' %97
'a'
>>> '%c %c %c' %(97,98,99)
'a b c'
>>> '%d+%d=%d' %(4,5,9)
'4+5=9'
>>> '%o'%10
'12'
>>> '%X' %16
'10'
>>> '%f' %27.658
'27.658000'
>>> '%e' %27.658
'2.765800e+01'
>>> '%g' %27.658
'27.658'
>>> '%5.1f' %27.658
' 27.7'
>>> '%.2ef' %27.658
'2.77e+01f'
>>> '-%d+%d=%d' %(4,5,9)
'-4+5=9'
>>> '%-10d+%d=%d' %(4,5,9)
'4 +5=9'
>>> '%+d'%5
'+5'
>>> '%#o'%10
'0o12'
>>> '%010d'%5
'0000000005'
-
请问以下这行代码会打印什么内容?
“{{1}}”.format(“不打印”, “打印”)
{1} -
以下代码中,a, b, c是什么参数?
“{a} love {b}.{c}”.format(a=“I”, b=“FishC”, c=“com”)
‘I love FishC.com’
关键字参数
- 以下代码中,{0}, {1}, {2}是什么参数?
“{0} love {1}.{2}”.format(“I”, “FishC”, “com”)
‘I love FishC.com’
位置参数
- 如果想要显示Pi = 3.14,format前边的字符串应该怎么填写呢?
"{0}{1:.2f}"format('Pi = ', 3.1415)
序列
列表、元组和字符串的共同点:
- 可以通过索引得到每一个元素
- 默认的索引值从0开始
- 可以进行分片
- 有很多共同的操作符
序列常用BIF:
- list() 方法用于将元组转换为列表。
>>> a = 'wo xiang qu wang ba'
>>> list(a)
['w', 'o', ' ', 'x', 'i', 'a', 'n', 'g', ' ', 'q', 'u', ' ', 'w', 'a', 'n', 'g', ' ', 'b', 'a']
>>> a = (1,1,2,3,5,8,13,21,34)
>>> list(a)
[1, 1, 2, 3, 5, 8, 13, 21, 34]
- tuple:将列表转化为元组
>>> tuple(a)
(1, 1, 2, 3, 5, 8, 13, 21, 34)
- str
- len(sub):返回sub的长度
- max(sub):返回序列中的最大值(英文为asc码)
- min(sub):返回序列或者参数中的最小值
- sum(sub,1):返回序列的总和再加上1
>>> sum(a)
88
>>> sum(a,6)
94
- sorted():排序
- reversed():返回迭代器对象,用list转化为列表
- enumerate():将索引值加入,编程坐标
>>> list(enumerate(a))
[(0, 1), (1, 1), (2, 2), (3, 3), (4, 5), (5, 8), (6, 13), (7, 21), (8, 34)]
- zip:
>>> a=[1,2,3,4,5,6]
>>> b=[7,8,9,0,1,2]
>>> list(zip(a,b))
[(1, 7), (2, 8), (3, 9), (4, 0), (5, 1), (6, 2)]
>>>
- 我们根据列表、元祖和字符串的共同特点,把它们三统称为什么?
序列 - 请问分别使用什么 BIF,可以把一个可迭代对象转换为列表、元祖和字符串?
list(),tuple(),str() - 你还能复述出“迭代”的概念吗?
- 你认为调用 max(‘I love FishC.com’) 会返回什么值?为什么?
v - 猜想一下 min() 这个 BIF 的实现过程
def min(x):
Least = x[0]
For each in x:
If each < least
least = each
return(least) - 视频中我们说 sum() 这个 BIF 有个缺陷,就是如果参数里有字符串类型的话就会报错,
请写出一个新的实现过程,自动“无视”参数里的字符串并返回正确的计算结果