python中的元组

1.元组的定义

t = (1,1.2,True,'westos')
print(t,type(t))

# 如果元组里面包含可变的数据类型 可以间接的去修改元组的内容
t1 = ([1,2,3],7,8,9)
print(t1,type(t1))
t1[0].append(4)
print(t1)
li = []
print(li,type(li))
t2 = tuple(li)
print(t2,type(t2))
li2 = list(t2)
print(li2,type(li2))
# 元组只有一个元素的时候,元素后面一定要加“,” ,否则数据类型不确定
t3 =(1,)
t4 = ('westos',)
print(t3,type(t3))
print(t4,type(t4))

2.元组的常用方法

t = (1, 1.2, True, 'westos')
print(t.index('westos'))
print(t.count('westos'))

3.元组的特性

t = (1, 1.2, True, 'westos')

# 索引
print(t[0])
print(t[1])

# 切片
print(t[::-1])
print(t[:-1])

# 连接
# 不同的数据类型之间 不能连接
# print(t + [1,2,3])

# 重复
print(t * 10)

# for循环
for i in t:
    print(i)
# 成员操作符
print(1 in t)
print(1 not in t)

4.元组的应用场景

a = 1
b = 2
a,b = b,a # a,b=(1,2) b=(1,2)[0] a =(1,2)[1]
print(a)
print(b)

# 打印变量
name = 'westos'
age = 12
t = (name,age)
print('name:%s,age:%d' %(name,age))
print('name:%s,age:%d' %t)
t = ('westos',12,'100')
name,age,nums = t
print(name)
print(age)
print(nums)

5.集合

# 集合里面的元素不可重复
s = {1, 1, 1, 1, 1, 3, 5, 67, 89}
print(s,type(s))

# 定义一个空集合
s1 = {}
print(type(s1)) # 默认情况下是dict
s2 = set([])
print(s2,type(s2))


# 列表的快速去重
li = [1,23,4,5,6,6,6,7,8,9]
print(list(set(li)))

6.集合中的常用方法

# 集合是一个可变的数据类型
# 添加顺序和存储顺序是不一样的
s = {4,5,6,7,8,9,2}
print(s)
# 添加
s.add(10)
s.add(0)
print(s)

# 添加多个元素
s.update({3,6,7,8})
print(s)

# 删除
a = s.pop()
print(s)
print(a)

# 删除指定的元素
s.remove(9)
print(s)
# 排序
s1 = {2,3,1}
sorted(s1)
print(s1)
s2 = {2,3,4}
# 并集
print('并集:',s1.union(s2))
print('并集:',s1 | s2)
# 交集
print('交集:',s1.intersection(s2))
print('交集:',s1 & s2)

# 差集
# s1和s2的差集 s1中有哪些s2中没有的元素
print('差集:',s1.difference(s2))
print('差集:',s1 -s2)

# 对等差分:并集- 交集
print('对等差分:',s1.symmetric_difference(s2))
print('对等差分:',s1 ^ s2)

s3 = {'westos','redhat','python'}
s4 = {'redhat','westos','linux'}
# s3是否是s4的子集
print(s3.issubset(s4))
# 两个集合是不是不相交
print(s3.isdisjoint(s4))

7.集合的特性

"""
集合支持的特性 成员操作符 for循环
"""
s = {1,2,3}
print(1 in s)
print(1 not in s)

for i in s:
    print(i,end='')
print()

print('hellp python')

eg:明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性
他先用计算机生成了N个1~1000之间的随机整数(N<=1000),N是用户输入的,对于其中重复的数字,只保留一个,把其余相同的数字去掉,不同的数对应着不同的学生的学号,然后再把这些数从小到大排序,按照排好的顺序去找同学做调查,请你协助明明完成“去重”与排序工作

import random
s = set([])

for i in range(int(input('N:'))):
    s.add(random.randint(1,1000))
print(sorted(s))
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值