Python之元组的特性及常用方法

列表——打了激素的数组
元组——带了紧箍咒的列表

  • 不可改变数据类型
  • 没有增删改
  • 可以存储任意数据类型

#定义一个元组

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()
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值