list的操作

list就是列表,它同样是数据类型之一,可以存储大量不同类型的数据,如整形,字符串,布尔值,列表,字典,元组,函数名等。列表是有索引的,可以进行切片操作。



#索引
s = ['a', 'b', 3, 4, 'cde', '567']
print(s[0])
print(s[4])
print(s[0:4])
print(s[0:5:2])
输出结果:a
              cde
              ['a', 'b', 3, 4]
              ['a', 3, 'cde']

#增
#第一种   append:在列表尾部添加元素,一次只能添加一个,无返回值
s = ['a', 'b', 3, 4, 'cde', '567']
s.append('功夫')
print(s)
输出结果:['a', 'b', 3, 4, 'cde', '567', '功夫']

#第二种 insert:插入,将制定对象插入到列表的指定位置,无返回值
s = ['a', 'b', 3, 4, 'cde', '567']
s.insert(3,'功夫')
print(s)
输出结果:['a', 'b', 3, '功夫', 4, 'cde', '567']

#第三种 extend :用于在列表末尾追加另一个序列的多个值(用新列表扩展原来的列表)
s= ['a', 'b', 3, 4, 'cde', '567']
s.extend([1,2,3,4])
print(s)
m=[1,2,3,'1','2']
m.extend('1234')
print(m)
输出结果:['a', 'b', 3, 4, 'cde', '567', 1, 2, 3, 4]
              [1, 2, 3, '1', '2', '1', '2', '3', '4']

#删 第一种 pop:用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值。
s= ['a', 'b', 3, 4, 'cde', '567']
s1=s.pop(1)     #按照索引来删除
print(s)
print(s1)
输出结果:['a', 3, 4, 'cde', '567']
              b

#删 第二种 remove:用于移除列表中某个值的第一个匹配项,没有返回值。
s= ['a', 'b', 3, 4, 'cde', '567']
s.remove('cde')        #按照元素删除,只删除第一项
print(s)
输出结果:['a', 'b', 3, 4, '567']

#删 第三种 clear:用于移除列表中所有元素。
s= ['a', 'b', 3, 4, 'cde', '567']
s.clear()
print(s)
输出结果:[]

#删 第四种 del:可以删除整个列表,也可以按照索引删除指定元素。
s= ['a', 'b', 3, 4, 'cde', '567']
del s[0]
print(s)
del s[0::2]
print(s)
del s
print(s)
输出结果:['b', 3, 4, 'cde', '567']
              [3, 'cde']
              报错:NameError: name 's' is not defined

#改  按照索引和切片改
s= ['a', 'b', 3, 4, 'cde', '567']
s[0]='A'
print(s)
#输出结果:['A', 'b', 3, 4, 'cde', '567']
s[2:4]=['二','四']
print(s)
#输出结果:['A', 'b', '二', '四', 'cde', '567']
s[4:]='CDE,五六七'     #把字符串的每个字符分开加入进去
print(s)
#输出结果:['A', 'b', '二', '四', 'C', 'D', 'E', ',', '五', '六', '七']

#查  切片查和使用for循环查
s= ['a', 'b', 3, 4, 'cde', '567']
print(s[1:4])
for i in s[1:4]:
    print (i)
#输出结果:['b', 3, 4]
                 b
                 3
                 4

#len :输出列表的长度,即元素个数
s= ['a', 'b', 3, 4, 'cde', '567']
print(len(s))
#输出结果:6

# count :输出指定元素的个数
s = ['a', 'b', 3, 4, 'a', 'a']
print(s.count('a'))
# 输出结果:3

# cindex:通过元素查找索引
s = ['a', 'b', 3, 4, 'A', 'B']
print(s.index('A'))
# 输出结果:4

# sort:从小到大升序排列
s = [5,9,1,2,10,23,43]
s.sort()
print(s)
# 输出结果:[1, 2, 5, 9, 10, 23, 43]

# sort(reverse):从大到小降序排列
s = [5,9,1,2,10,23,43]
s.sort(reverse=True)
print(s)
# 输出结果:[43, 23, 10, 9, 5, 2, 1]

# reverse:倒序排列
s = [1,2,3,4,5,6,7,8,9]
s.reverse()
print(s)
# 输出结果:[9, 8, 7, 6, 5, 4, 3, 2, 1]



 

列表的嵌套



s = [1,2,3,[4,5,6],7,8,9]
print(s[3][1])       #查找嵌套在列表里的列表元素
# 输出结果: 5



Ps:range,范围列表[],列表中的元素是数字,且可控的有效数字范围。

renge(101),相当于[0,1,2,3,....,97,98,99,100]的一个从0到100的列表,可切片。

tuple元组

tuple元组可以看做一种只可读的列表,即数据只能被查询,不能被修改。列表的切片操作同样适用于tuple,另外,虽然tuple里面的数据不能更改,但是tuple里面的列表或者字典里的数据可以更改。



s = (1,2,3,[4,5,6],7,8,9)
s[3][1] ='A'
print(s)
#输出结果:(1, 2, 3, [4, 'A', 6], 7, 8, 9)