1、列表是有一序列特定顺序排列的元素组成的。可以是字符串、数字、字典等都可以任何东西加入到列表中,列中的元素之间没有任何关系。列表也是自带小标的,默认也还是从0开始。
i = {‘a’, ‘b’, ‘c’, ‘abc’, 1, 2, 3}
print type(i)
print(dir(i))
str1 = 'dafdalfdasfdasdasfdsa'
print(type(str1)) #这里输出的结果显示是字符串类型
print(list(str1)) #这里是强制以列表类型输出
a = ['a', 'b', 'c', 123, 'd']
print(a)
print(type(a)) #显示默认输出就是列表类型
print(dir(a)) #查看列表的一些使用方法及其函数等等,下面将会学到的'append','index'等
1.1、’append’, list的末尾增加一个元素
I ={‘a’, ‘b’, ‘c’, ‘abc’,1,2,3}
print(I)
I.append(‘hello’)
print(I)
结果:
[‘a’,’b’,’c’,’abc’,1,2,3]
[‘a’,’b’,’c’,’abc’,1,2,3, ‘hello’]
a = ['a', 'b', 'c', 123, 'd']
print(a)
# print(type(a)) #显示默认输出就是列表类型
# print(dir(a)) #查看列表的一些使用方法及其函数等等,下面将会学到的'append','index'等
a.append('study hard')#是在列表后面追加指定的内容
print(a)
1.2、’index’,符合条件的list下标
I =[‘a’,’b’,’c’,’abc’,1,2,3]
print(I.index(‘abc’))
结果:3
a = ['a', 'b', 'c', 'abcd', 123, 'd']
print(a)
# print(type(a)) #显示默认输出就是列表类型
# print(dir(a)) #查看列表的一些使用方法及其函数等等,下面将会学到的'append','index'等
#append追加
a.append('study hard')#是在列表后面追加指定的内容
print(a)
#index
print(a[0],a[1],a[2],a[4])
print(a.index('abcd'))#因为存在下标,第一个数字从0开始计算
#跟str的find差不多
1.3、’insert’,插入list中一个元素
格式:
insert(…)
I.insert(index, object) —insert object before index
I = [‘a’, ‘b’, ‘c’, ‘abc’,1,2,3]
I.insert(2,’321’)
print(I)
结果:
[‘a’,’b’,’321’,’c’,’abc’,1,2,3]
a = ['a', 'b', 'c', 'abcd', 123, 'd']
print(a)
a.insert(0, 'safe')
print(a)
a.insert(3,'dsafa')
print(a)
1.4、pop 末尾删除
a = ['a', 'b', 'c', 'abcd', 123, 'd']
print(a)
#append追加
a.append('study hard')#是在列表后面追加指定的内容
print(a)
#pop 末尾删除
print('#######' * 20)
a.pop()
print(a)
1.5、remove
#remove 删除list中一个元素
print('$$$$$$$' * 25)
a.remove('abcd')
print(a)
#remove 删除list中一个元素
print('$$$$$$$' * 25)
a.append('abcd')
print(a)
a.remove('abcd')
print(a)
1.6、sort 排序
#sort 排序
print('sort' * 30)
print(a)
a.sort()
print(a) #从字母开始排序,默认数字放在前面
1.7、reverse list反序排列
print('reverse ' * 40)
print(a)
a.reverse()
print(a)
1.8、切片
#切片
print('****** ' * 30)
print(a)
print(a[3:])
print(a[1:5])#注意,切片的时候,打印出来的最后一位数字-1后的结果
切片操作符在python中的原型是:
[start:stop:step]
即:[开始索引:结束索引:步长值]
开始索引:同其它语音一样,从0开始。序列从左到右方向中,第一个值的索引为0,最后一个为-1
结束索引:切片操作符将取到该索引为止,不包含该索引的值
步长值:默认是一个接一个的切取,如果为2,则表示进行隔一取一操作。步长值为正时表示从左向右取,如果为负,则表示从右向左取。步长值不能为0.
print('########' * 20)
print(a)
print(a[1:5:2])#这里1表示从第一个取数,2表示的是取数的间隔(这里就是中间会跳一个去下一个数)
2、元组
tuple可以说就是不可变的list,但是tuple还是和list有些差别
1、Tuple的定义形式
t=(‘a’,’b’,’c’,’d’,1,2,3)
print(dir(t))
print(type(t))
tuple唯一和list定义的区别就是“[]”变成了“()”,其它没有什么变化,tuple不能增加和减少,它本身自己的方法很少,只有count和index两个方法,其它的list方法都不可用。
str1 = 'daslfdsalfdsafdsa'
print(tuple(str1))
tuple单个元素
Tuple在表示单个元素的时候,是比较特别的,需要特别注意
a =(1,)
print(type(a))
m = ('asdas')
print(type(m))
n=('abc',)
print(type(n))
#使用tuple的时候要注意,单个tuple元素的时候,元素后面要加“,(逗号)”
m = ('asdas')
print(type(m))
n=('abc',)
x=(765,)
print(type(n))
print(type(x))
count 统计某个元素的个数
tul = ('a','b','c','d','e','a','a','a')
print(tul.count('a'))
index 返回某个元素的下标
#index 返回某个元素的下标
print(tul.index('a'))
print(tul.index('d'))
print(tul.index('f'))#没有这个值,会报错;所以元素必须存在