元组

作者: 仙灵儿 | 来源:发表于2018-07-21 22:57 被阅读1次

1 元组:(tuple)

tuple:()相比较列表list:[]

元组和列表都是一种有序集合,(0,2,3,5,9),第一个元素即是第一个存入的元素,

按照存放顺序存储。

#元组的访问

#格式:元组名[下标]

tuple4 = (1,2,3,4,5)

print(tuple4[0])       #  1

# 获取最后一个元素

print(tuple4[-1])      #5

删除元组

tuple1 = (1,2,3)

del tuple1     #会报错因为没有了

元组的截取

元组的特点:  1)与列表非常相似

2)一旦初始化就不能修改

3)使用小括号

index = 空元组

index = (1,)   注意:创建元组时,如果只有一个元素,元素后面需要带上逗号","

如果不加,系统默认为index变量即是元素。

index = (1,2,3,4)

index[0] = 5   # 结果会报元组元素值不能修改

注意:只有元组的元素是非元组类型(列表或字典),即可改变元素(item)内部的值

tupe(元组)和list(列表)的相互转换:

l = list("abc")  #["a","b","c"]

t = tupe(l)  #('a','b','c')

例     练习:输入10个指定函数的解释文本

# coding:utf-8

funs_tuple = ('list','tuple','max','len','os','listdir')

funs_list = []  #存放输入函数的说明(解释)

for fun_name in funs_tuple:

info = input('{0}功能:'.format(funs_name))

funs_list.append(info)

2 集合

set:无序,无重复

创建集合:s = set()

s = set([1,2,3]),l = list('abc'),s = set(l)

向集合中添加元素: s.add(item)   (item)可以是任意类型    添加元素  除了列表

s.add([1,2,3])    # error, 列表不能被hash转换,列表是可变的

s.add((1,2,3))    # ok ,  元组中的元素是不可变的

修改和访问集合中(某一)个元素:

s[0] 注意:集合是不存在下标的

访问:pop(),  for a in s 来访问某一个元素,在for循环时外加一个if判断

pop()   从集合中开始位置弹出元素

修改:整体修改

s.update((2,2,4))  # 在原有的内容上,追加不重复内容

add()只添加一个元素,    update()有可能添加多个元素(重复性)

删除集合:

pop()

remove(元素),如果元素不存在?  则会报错  KeyError(键错误)

clear()清空所有的元素

del s

help('keywords')  在交互环境中查看关键字

交集(&): 求相同的部分   set1 = set([12,23,78,999])

set2 = set([12,45,78,56,85])

set3 = set1 & set2

print(set3)

取两个集合相同部分

并集(|):合并两个集合

set1 = set([12,23,78,999])

set2 = set([12,45,78,56,85])

set3 = set1 | set2

print(set3)

取两个所有部分,并去掉重复的

字典:

以'{}'包裹元素:

以 key-value()

集合:{'1','2','3'},  只是key部分

字典:{'1':'计算三角形面积','2':'圆形面积','3':'矩形面积'}

例    抽取水果特性,并用字典描述水果的实例

水果属性:分类cate,品种pz,产地,cd

字典:{'cate':'苹果','pz':'红富士','cd':'洛川'}

字典的特点:1:字典本身是可变类型

2:极快的查找速度

3;key具有唯一性

4;key具有无序性

5;key需要不可变数据类型(字符串,数字)

6;当key重复的时候,只保留一个,自动舍弃其它值

字典添加属性及属性值(key-value键值对)

fruit_dict = {}

fruit_dict['cate'] = ''  #cate作为键key使用,如果不存在,则会添加《

#如果存在,则会更改

删除:

pop('price')  #将弹出price的key-value键值对

1)获取所有key集合

key()函数

2)循环读取字典的内容value

for key in fruit.keys():

print(key)

print(fruit.get(key))  #从字典中获取key的value

print(fruit[key])      #从字典中获取key的value

3)获取所有的key-value的items,并循环读取

dels_key = set()

for item in fruit.items():

#item:(key,value)

print(item[0],item[1])

if item[0]=='cate'

dels_key.add(item[0])

fruit.popitem(item) #报错 RuntimeError运行时异常,

fruit.pop()         # popitem()函数不需要item参数,随机或从末尾开始弹出

# 在字典的迭代外面去删除

for del_key in dels_key:

fruit.pop(del_key)

练习:水果管理小程序,功能:1;查询水果

2;添加水果

3;变更价格

4;删除水果

0;退出

水果的结构;

编号id,果名name,数量 cnt,价格price,销售排行sale_top

分析:

每种水果用dict字典来存储

再把每种水果存入到list列表中

收集数据时,按照格式来输入:id,name,cnt,price,sale_top

将输入的内容拆分成list

将key事先存入到list中

相关文章

  • Python入门:元组

    六、元组 6.1 定义元组 元组和列表相似,列表是[---],元组是(---) 6.2 访问元组 6.3 修改元组...

  • Python 元组

    元组的创建和删除 访问元组元素 修改元组元素 元组推导式 元组与列表的区别

  • python入坑第七天|元组

    废话不多说,今天来学习元组。内容如下: 元组的创建 索引、切片 元组的连接 元组的不可修改性 元组内置函数 元组的...

  • Python元组

    python元组元组和列表的区别在于元组中的元素不能修改 创建元组创建元组用() tuple = ()当元组里只包...

  • Python_4_内置结构-元组-字符串

    1. 元组概念1.1. 元组的特点1.2. 元组的定义1.3. 元组的访问1.4. 元组的查询 2. 命名元组 3...

  • Swift 元组 (Tuple)

    定义元组 获取元组内容 修改元组 元组分解 元组作为函数返回值 通常可以用元组来为函数返回多个返回值。

  • 13、Python集合(set)

    上集回顾: 元组(tuple)定义 元组注意事项 元组妙用 上集学习了元组相关知识,元组和列表类似,但是不能修改。...

  • 3.元组Tuple

    目录0.元组介绍1.元组定义和初始化2.元组元素访问3.命名元组namedtuple 0.元组介绍 元组是不可变对...

  • swift 元组 (Tuple)

    元组的声明 输出结果 元组解包 输出结果 元组的分量 输出结果 命名元组分量 输出结果 使用_忽略元组分量

  • 元组

    目录 元组基本介绍 可变对象 元组和列表的区别 元组的解包(Unpacking) 1. 元组基本介绍 元组表现形式...

网友评论

      本文标题:元组

      本文链接:https://www.haomeiwen.com/subject/pthhmftx.html