列表——打了激素的数组
元组——带了紧箍咒的列表
- 不可改变数据类型
- 没有增删改
- 可以存储任意数据类型
#定义一个元组
t = (1,1.2,True,'redhat',[1,2,3,4])
print(t,type(t))
(1, 1.2, True, 'redhat',[1,2,3,4]) <class 'tuple'
注意:如果元组里面包含可变数据类型,可以间接的修改元组内容
t[4].append(5)
print(t)
(1, 1.2, True, 'redhat', [1, 2, 3, 4, 5])
元组的定义
t2 = ()
print(t2,type(t2))
() <class 'tuple'>
t3 = tuple([])
print(t3,type(t3))
() <class 'tuple'>
t4 = list(t3)
print(t4,type(t4))
[] <class 'list'>
list = [1]
print(list,type(list))
[1] <class 'list'>
#元组如果只有一个元素,元素后面一定要加逗号,否则数据类型不确定
t = (2)
print(t,type(t))
2 <class 'int'>
t = ('dsf')
print(t,type(t))
dsf <class 'str'>
t = (2,)
print(t,type(t))
(2,) <class 'tuple'>
元组的特性
索引
print(t[0])
print(t[1])
切片
print(t[:-1])
print(t[::-1])
连接
print(t + (1,3,4))
#不同的数据类型之间不能连接
print(t + [1,2,3])
print(t + 'westos')
print(t+([1,2,3],)) #这样就可以
重复
print(t * 20)
for 循环
for i in t:
print(i)
成员操作符
print(1 in t)
print(1 not in t)
元组的常用方法
t = (10,1.2,True,'westos','westos')
print(t.count('westos'))
print(t.index(1.2))
元组的应用场景
a = 1
b = 2
b,a = a,b # b,a = (1,2) b=(1,2)[0] a=(1,2)[1]
print(a)
print(b)
#打印变量
name = 'westos'
age = 11
t = (name,age)
print('name:%s,age:%d' %(name,age))
print('name:%s,age:%d' %t)
#元组的赋值:有多少个元素,就用多少个变量接收
t = ('westos',10,100)
name,age,score =t
print(name,age,score)
————-练习—————
系统里面有多个用户,用户的信息目前保存在列表里面
users = [‘root’,‘westos’]
passwd = [‘123’,‘456’]
添加用户:
1). 判断用户是否存在?
2). 如果存在, 报错;
3). 如果不存在,添加用户名和密码分别到列表中;删除用户
1). 判断用户名是否存在
2). 如果存在,删除;
3). 如果不存在, 报错;用户登陆
用户查看
退出
hjh
> users = ['root', 'westos'] passwd = ['123', '456'] while True: > choose = int(input('请选择服务:1-添加用户、2-删除用户、3-登陆用户、4-查看用户、5-退出 ')) > if (choose == 1): > name = input('请输入新用户:') > for x in users: > if (name == x): > print('此用户已存在,请重新输入:') > break > else: > users.append(name) > secret = input('请设置密码:') > passwd.append(secret) > print('用户添加成功!!') > elif (choose == 2): > name1 = input('请输入需要删除的用户:') > i = 0 > for x in users: > if (name1 == x): > users.pop(i) > passwd.pop(i) > print('用户删除成功!!') > break > i+= 1 > else: > print('用户不存在,请重新输入:') > elif (choose == 3): > loginuser = input('请输入用户名:') > k = 0 > for y in users: > if (loginuser == y): > loginpass = input('请输入密码:') > if (loginpass == passwd[k]): > print('登陆成功!!') > else: > print('登录失败!!') > elif (choose == 4): > loginuser = input('请输入用户名:') > k = 0 > for y in users: > if (loginuser == y): > loginpass = input('请输入密码:') > if (loginpass == passwd[k]): > print('查看成功!!') > else: > print('查看失败!!') > else: > print('退出登陆!') > exit()