>>> a = list() #空列表
>>> a
[]
>>> b = "i love you" #字符串转换为列表
>>> b =list(b)
>>> b
['i', ' ', 'l', 'o', 'v', 'e', ' ', 'y', 'o', 'u']
>>> a = [1,4,6,7,3] # max():数字就返回最大值,字符串就返回最大ASCII码值,数字+字符串就报错
>>> max(a)
7
>>> b
['i', ' ', 'l', 'o', 'v', 'e', ' ', 'y', 'o', 'u']
>>> max(b)
'y'
>>> min(b)
' '
>>> a.append("a")
>>> a
[1, 4, 6, 7, 3, 'a']
>>> max(a)
Traceback (most recent call last):
File "<pyshell#36>", line 1, in <module>
max(a)
TypeError: '>' not supported between instances of 'str' and 'int'
#sum:元组里面的数字元素相加,第二个参数设置的话,返回值也一起加上。
>>> tuple2 = (2.1,43,5.6)
>>> sum(tuple2)
50.7
>>> sum(tuple2,5)
55.7
#sorted :返回值,从小到大排序
>>> sorted(tuple2)
[2.1, 5.6, 43]
# reversed():不返回值,翻转
>>> reversed(tuple2)
<reversed object at 0x05A2FE10>
>>> list(reversed(tuple2))
[5.6, 43, 2.1]
>>> list(enumerate(tuple2)) #索引值跟元组的元素组成新的列表
[(0, 2.1), (1, 43), (2, 5.6)]
>>> a = [1,2,3,4,5,6,7,8] # zip():不返回值,索引值匹配组成新的列表,多余的元素舍去
>>> b = [4,5,6,7,8]
>>> zip(a,b)
<zip object at 0x05A3FA80>
>>> list(zip(a,b))
[(1, 4), (2, 5), (3, 6), (4, 7), (5, 8)]
列表/字符串/元组:统称为序列:
因为他们有以下共同点:
1)都可以通过索引得到每一个元素
2)默认索引值总是从0开始(当然灵活的Python还支持负数索引) 3)可以通过分片的方法得到一个范围内的元素的集合
4)有很多共同的操作符(重复操作符、拼接操作符、成员关系操作符)
1. 请问分别使用什么BIF,可以把一个可迭代对象转换为列表、元祖和字符串?
list([iterable]) 把可迭代对象转换为列表
tuple([iterable]) 把可迭代对象转换为元祖
str(obj) 把对象转换为字符串
例如:
>>> temp = "i love you"
>>> list(temp)
['i', ' ', 'l', 'o', 'v', 'e', ' ', 'y', 'o', 'u']