列表常用的内置方法:
1.append(obj)在列表末尾添加新的对象
2.count(obj)统计某个元素在列表中出现的次数
3.extend(seq)在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
4.index(obj)从列表中找出某个值第一个匹配项的索引位置
5.insert(index, obj)将对象插入列表
6.pop(obj=list[-1])移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
7.remove(obj)移除列表中某个值的第一个匹配项
8.reverse()反向列表中元素
9.sort([func])对原列表进行排序
10.copy()复制列表
11.clear()清空列表,等于del lis[:]
列表的基本方法:
1.创建
alis = []
blis =[2,3,4,5]
clis = [1,2,'a','b',{'k':1},[1,2,3],(1,2,3)]
2.访问,列表的最后一个索引是len(list) -1
a = [1,2,3,4,5,6,7]
print(a[:])
[1, 2, 3, 4, 5, 6, 7]
print(a[0])
1
print(a[0:2])
[1, 2]
print(a[1:-1:2])
[2, 4, 6]
print(a[-6:-2:1])
[2, 3, 4, 5]
print(a[6:2:-2])
[7, 5]
print(a[8:1:-2])
[7, 5, 3]
3.修改列表元素
a = [1,2,3,4,5]
a[0] = 'w'
print(a)
['w', 2, 3, 4, 5]
a[5:5] = ['four']
print(a)
['w', 2, 3, 4, 5, 'four']
b = [1,2,3,4,5]
b[5:1:-2] = 'ab'
print(b)
[1, 2, 'b', 4, 'a']
4.删除列表元素del,remove,pop
del根据索引删除元素,无返回值
pop根据索引删除元素,有返回值
remove 删除指定元素,无返回值
>>> a = [1,2,3,4,5,6,7]
>>> del a[0]#根据索引删除
>>> a
[2, 3, 4, 5, 6, 7]
>>> a.remove(2)#指定元素删除
>>> a
[3, 4, 5, 6, 7]
>>> a.pop(0)#根据索引删除。有返回值。
3
>>> a
[4, 5, 6, 7]
5.列表的长度len(list) 6.列表中元素最大值 7.列表中元素最小值 8.类表序列互相转换
>>> s = [1,2,3,4,5,6]
>>> len(s)
6
>>> max(s)
6
>>> min(s)
1
>>> c = (1,2,3,4)
>>> list(c)
[1, 2, 3, 4]
9.append()在列表末尾添加新的对象
>>> a = [1,2,3,4,5]
>>> a.append(6)
>>> a
[1, 2, 3, 4, 5, 6]
10.count(obj)统计某个元素在列表中出现的次数
>>> a = [1,2,3,4,5,2,3,2,2,3]
>>> a.count(2)
4
11.extend(seq)在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
>>> a = [1,2]
>>> a.extend((1,2,3))
>>> a
[1, 2, 1, 2, 3]
>>> a.extend(range(10,12))
>>> a
[1, 2, 1, 2, 3, 10, 11]
>>> a.extend(['a',['b']])
>>> a
[1, 2, 1, 2, 3, 10, 11, 'a', ['b']]
12.insert(index, obj)将对象插入列表
>>> a.insert(0,'a')
>>> a
['a', 1, 2, 3, 4]
13.pop默认删除最后一个,remove移除列表中第一个匹配到的值略
>>> a
['a', 1, 2, 3, 4]
>>> a.pop()
4
>>> a.pop(0)
'a'
>>> a
[1, 2, 3]
>>> a.remove(2)
>>> a
[1, 3]
>>> del a[0]
>>> a
[3]
14.reverse()反向列表元素
>>> a = [1,2,3,4,5]
>>> a.reverse()
>>> a
[5, 4, 3, 2, 1]
15.sort()对列表进行排序
>>> a
[5, 4, 3, 2, 1]
>>> a.sort()
>>> a
[1, 2, 3, 4, 5]
16.copy()列表的拷贝
a = ['a','b','c']
b = a.copy()
print(b)
17.clear()清空列表,等于del list[:]
a = ['a','b','c']
a.clear()
print(a)
[]
18.类表的遍历,及判断是否属于列表成员
>>> a = [1,2,3,4,5]
>>> for i in a:
... print(i)
1
2
3
4
5
遍历下标及值
>>> a = [1,2,3,4,5]
>>> for i in range(len(a)):
... print(i,a[i])
(0, 1)
(1, 2)
(2, 3)
(3, 4)
(4, 5)
判断是否属于该列表
>>> x = 10
>>> if x in a:
... print('True')
... else:
... print('False')
False
简单练习
c = [['wyl01',1],['wyl',2],['wyl03',3]]
def zhuangshi(func):
def wyl():
print('我是装饰的新功能kkk------开始进行下一个功能-----')
return func()
return wyl
@zhuangshi
def denglu():
while True:
a = input("请输入用户名>>:")
b = input("请输入密码>>:")
global c
try:
b = int(b)
except ValueError:
print("密码必须是数字请重新输入")
continue
if [a,b] in c:
print(f"用户名:{a} 密码:{b}\n登陆成功.......... ")
print("啦啦啦.....")
break
else:
print("用户名密码输入错误请重新输入")
@zhuangshi
def zchs():
while True:
zcn = input("请输入注册用户名:>>")
zcp = input('请输入注册用户密码:>>')
try:
zcp = int(zcp)
except ValueError:
print("密码必须是数字请重新输入")
continue
print(zcp)
da = [zcn,zcp]
global c
c.append(da)
print(f"您注册的用户密码:用户名{c[-1][0]},密码:{c[-1][1]}")
break
def new_old():
while True:
ts = input("您是老用户吗?:yes/no 请输入:>>")
if ts == 'yes':
print('--开始登陆---')
denglu()
break
elif ts == 'no':
print('--开始注册---')
zchs()
denglu()
break
else:
print('您输入有误,请重新输入:')
if __name__ == '__main__':
new_old()