欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

python的元祖,集合,字典的常见函数,特征与操作

程序员文章站 2022-06-22 11:26:49
# 关于元祖的函数 ​ - 以下代码 - 以下函数,对 list 基本适用 关于元祖的函数¶ 以下代码 # 关于元祖的函数 ​ - 以下代码 - 以下函数,对 list 基本适用 关于元祖的函数¶ 以下代码 # 关于元祖的函数 ​ - 以下代码 - 以下函数,对 list 基本适用 # 关于元祖的函 ......
#  关于元祖的函数
- 以下代码
- 以下函数,对 list 基本适用

关于元祖的函数

  • 以下代码
in [2]:
 
 
# len :获取元祖的长度
t = (1,2,3,4,5,6)
len(t)
out[2]:
6
in [3]:
 
# max min :最大值最小值
# 如果,列表或元祖中有多个最大值和多个最小值,则实际打印出哪个??
print(max(t))
print(min(t))
6
1
in [5]:
xxxxxxxxxx
 
# tuple 转化成或创建元祖
l = [1,2,3,4,5,6]
t = tuple(l)
print(t)
t = tuple()
print(t)
(1, 2, 3, 4, 5, 6)
()
 
 
# 元祖的函数
- 基本跟 list 通用

type markdown and latex: α2α2

in [8]:
 
# count :计算制定数据出现的次数
t = (1,2,3,4,5,6,55,3,55,3)
print(t)
# index : 求制定元素在元祖中的索引位置
print(t.index(55))
# 如果需要查找的数字是多个,则返回最前面的一个
print(t.index(3))
(1, 2, 3, 4, 5, 6, 55, 3, 55, 3)
6
2
in [12]:
xxxxxxxxxx
 
# 元祖变量交换法
a = 1
b = 3
print(a)
print(b)
print("*" * 20)
# java程序员会这样写
c = a
a = b
b = c
print(a)
print(b)
print("*" * 20)
# python 写法
a,b = b,a
print(a)
print(b)
1
3
********************
3
1
********************
1
3
 
xxxxxxxxxx
 
# 集合- set
- 集合是高中数学的一个概念
- 一堆确定的无序的唯一的数据,集合中每一个数据成为一个元素

type markdown and latex: α2α2

in [16]:
xxxxxxxxxx
 
# 集合定义
s = set()
print(type(s))
print(s)
# 此时大括号里一定要有值,否则定义出的是 dict
s = {1,2,3,4,5,6}
print(s)
<class 'set'>
set()
{1, 2, 3, 4, 5, 6}
in [14]:
 
 
# 如果只是用大括号定义,则定义的是一个 dict 类型
d = {}
print(type(d))
print(d)
<class 'dict'>
{}
 
 
# 集合的特征
 - 集合是无序的,即无法使用索引分片
 - 集合内数据元素具有唯一性,可以用来排除重复数据
 - 集合内的数据, str int float tuple 冰冻集合等,即内部只能放置可哈希数据

type markdown and latex: α2α2

 
 
# 集合序列操作

type markdown and latex: α2α2

in [17]:
x
# 成员检测
# in not in
s = {4,5,"woshishui","wozaina","wozaizuoshenm"}
print(s)
if "woshishui" in s:
    print("大大")

if "woshini" not in s:
    print("你是谁")
{4, 5, 'wozaizuoshenm', 'woshishui', 'wozaina'}
大大
你是谁
xxxxxxxxxx
# 集合便利操作

type markdown and latex: α2α2

in [18]:
 
xxxxxxxxxx
# for 循环
s = {4,5,"woshishui","wozaina","wozaizuoshenm"}
for i in s:
    print(i,end=" ")
4 5 wozaizuoshenm woshishui wozaina 
in [20]:
 
# 带有元组的集合遍历
s = {(4,5,6),("woshishui","wozaina","wozaizuoshenm"),(5,6,7)}
for k,n,m in s:
    print(k,"--",n,"--",m)
5 -- 6 -- 7
4 -- 5 -- 6
woshishui -- wozaina -- wozaizuoshenm
xxxxxxxxxx
# 集合的内置函数

type markdown and latex: α2α2

in [22]:
xxxxxxxxxx
 
 # 普通集合
 # 以下集合在初始化后自动过滤掉重复元素
s = {2,22,333,55,66,33,11,559,66,1,2,3,45,6,12,3,2}
print(s)
# 普通的集合内置函数
ss = {i for i in s}
print(ss)
{33, 2, 66, 1, 3, 6, 11, 12, 333, 45, 559, 22, 55}
{33, 2, 3, 66, 1, 6, 11, 12, 333, 45, 559, 22, 55}
in [23]:
xxxxxxxxxx
 
# 带条件的集合内置函数
sss = {i for i in s if i % 2 == 0 }
print(sss)
{2, 66, 6, 12, 22}
in [29]:
 
# 多循环的集合内置函数
s1 = {1,2,3,4,5}
s2 = {"w","shishui","n"}
s = {m*n for m in s2 for n in s1}
print(s)
s = {m*n for m in s2 for n in s1 if n ==4}
print(s)
{'nnn', 'shishuishishuishishui', 'nnnnn', 'ww', 'nnnn', 'n', 'w', 'wwww', 'shishui', 'shishuishishui', 'shishuishishuishishuishishuishishui', 'wwwww', 'www', 'nn', 'shishuishishuishishuishishui'}
{'shishuishishuishishuishishui', 'wwww', 'nnnn'}
 
 
# 集合函数/关于集合的函数

type markdown and latex: α2α2

in [30]:
 
# len, max, min, :跟其他基本函数一致
s = {589,654,321,123,258}
print(len(s))# 集合长度
print(max(s))# 集合内元素的最大值
print(min(s))# 集合内元素的最小值
5
654
123
in [32]:
x
# set :生成一个集合
l = [1,2,3]
s = set(l)
print(s)
{1, 2, 3}
in [33]:
 
# add : 向集合内添加元素,生成新的集合
s = {2,3,4}
s.add(546)
print(s)
{2, 3, 4, 546}
in [34]:
xxxxxxxxxx
l = [1,2,3]
print(s)
print(id(s))
s = set(l)
print(s)
print(id(s))
{2, 3, 4, 546}
2286297091432
{1, 2, 3}
2286297091656
in [36]:
 
# clear:原集合序列清空,不生成新的集合
l = [1,2,3]
print(s)
print(id(s))
s.clear()
print(s)
print(id(s))
set()
2286297091656
set()
2286297091656
in [37]:
 
 
# copy : 拷贝
# remove: 移除指定的值,直接改变原有值(不生成新的集合序列),如果要删除的值不错在,则报错
# discard :移除集合内指定的值,跟 remove 一样,但是如果要删除的数据不存在话,不报错
s = {1,2,3,4,5,6}
s.remove(5)
print(s)
s.discard(1)
print(s)
print("*" * 20)
s.discard(1100)
print(t)
s.remove(1100)
print(s)
# 为什么  remove 删除不存在的值会报 keyerror
{1, 2, 3, 4, 6}
{2, 3, 4, 6}
********************
(1, 2, 3, 4, 5, 6, 55, 3, 55, 3)
---------------------------------------------------------------------------
keyerror                                  traceback (most recent call last)
<ipython-input-37-dfd60878c871> in <module>()
     12 print(t)
     13 
---> 14 s.remove(1100)
     15 print(s)

keyerror: 1100

in [39]:
 
 #  pop 随机移除一个元素
s = {1,2,3,4,5,6}
d = s.pop()
print(d)
print(s)
1
{2, 3, 4, 5, 6}
in [40]:
 
 
# 集合函数
# intersection:交集
# difference:差集
# union:并集
# issubset:检测一个元素是否为另一个元素的子集
# issuperset:检查一个元素是否为另一个元素的超集
s1 = {1,2,3,4,5,6,7}
s2 = {9,10,11,12,15,16}
s_1 = s1.intersection(s2)
print(s_1)
s_2 = s1.difference(s2)
print(s_2)
s_3 = s1.issubset(s2)
print(s_3)
set()
{1, 2, 3, 4, 5, 6, 7}
false
in [44]:
 
# 集合数学操作
s1 = {}
s2 = {}
s_1 = s1 - s2
print(s_1)
s_2 = s1 + s2
print(s_2)
---------------------------------------------------------------------------
typeerror                                 traceback (most recent call last)
<ipython-input-44-758adeea170a> in <module>()
      3 s2 = {}
      4 
----> 5 s_1 = s1 - s2
      6 print(s_1)
      7 

typeerror: unsupported operand type(s) for -: 'dict' and 'dict'

 
# frozenset :冰冻集合
 -  冰冻集合就是不可进行任何修改的集合
 - frozenset 是一种特殊集合

frozenset :冰冻集合

  • 冰冻集合就是不可进行任何修改的集合
  • frozenset 是一种特殊集合
in [45]:
 
 
# 创建
s = frozenset()
print(type(s))
print(s)
<class 'frozenset'>
frozenset()
 
# dict 字典
- 字典是一种组合数据,没有顺序的组合数据,建议键值对形式出现

dict 字典

  • 字典是一种组合数据,没有顺序的组合数据,建议键值对形式出现
in [56]:
 
 
# 字典的创建
# 创建空字典
d = {}
print(d)
# 创建空字典2
d = dict()
print(d)
# 创建有值的字典,每一组数据用冒号隔开,每一对键值用逗号隔开
d = {"one":1, "tow":2,"whree":3}
print(d)
#  用 dict 创建有内容的字典1
d = dict({"one":1, "tow":2,"whree":3})
print(d)
# 用 dict 创建有内容的字典2
# 利用关键字参数
d = dict(one=1, tow=2,whree=3)
print(d)
d = dict ([("tow",2),("three",3),("five",5)])
print(d)
(0)
打赏 python的元祖,集合,字典的常见函数,特征与操作 微信扫一扫

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

python的元祖,集合,字典的常见函数,特征与操作
验证码: python的元祖,集合,字典的常见函数,特征与操作