首页 > 编程语言 >python学习(三)

python学习(三)

时间:2024-05-26 21:13:17浏览次数:24  
标签:输出 python sale 学习 dict 字典 输入 Out

1 字典

字典是一个可变的、无序的容器,是python中唯一内置的映射类型的数据结构

字典中的元素都是键值对(item项),每一个值(value)都对应一个键(key),标准性符合是{}和;

注意

  • 字典的键不可以出现重复,值是可以重复的
  • 必须是不可变的数据类型才可以做字典的键

1.1 字典定义

直接用键值和{}来定义

例如,

输入In:

dict_sale = {"小乔":221073,"大乔":211502,"周瑜":466296}
dict_sale

输出Out:

{'周瑜': 466296, '大乔': 211502, '小乔': 221073}

输入In:

len(dict_sale)

输出Out:

3

 

1.2 通过dict函数来创建字典

例如:

输入In:

dict() #生成空字典

输出Out:

{}

输入In:

dict(one = 1,two = 2)

输出Out:

{'one': 1, 'two': 2}

输入In:

list1 = [["a",1],["b",2],["c",3]]
dict(list1)

输出Out:

{'a': 1, 'b': 2, 'c': 3}

 

1.3 结合zip函数创建字典

例子:

输入In:

list(zip(list("abcde"),(1,2,3,4,5)))   #生成列表

输出Out:

[('a', 1), ('b', 2), ('c', 3), ('d', 4), ('e', 5)]

输入In:

dict(zip(list("abcde"),(1,2,3,4,5)))   #生成字典

输出Out:

{'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5}

输入In:

list("abcde")

输出Out:

['a', 'b', 'c', 'd', 'e']

 

1.4 字典的特征

输入In:

dict_sale

输出Out:

{'周瑜': 466296, '大乔': 211502, '小乔': 221073}

输入In:

dict_sale["周瑜"]

输出Out:

466296

输入In:

dict_sale["周瑜"] += 20000
dict_sale["周瑜"]

输出Out:

486296

1.5 字典的常用方法

1.5.1 增加

输入In:

dict_sale["孙权"] = 420000  #在字典中增加
dict_sale

输出Out:

{'周瑜': 486296, '大乔': 211502, '孙权': 420000, '小乔': 221073}

 

1.5.2 删除

输入In:

del dict_sale["小乔"]
dict_sale

输出Out:

{'周瑜': 486296, '大乔': 211502, '孙权': 420000}

输入In:

dict_sale.pop("大乔")  #大乔同学离职,返回被删除的键值对应的值

输出Out:

211502

输入In:

dict_sale

输出Out:

{'周瑜': 486296, '孙权': 420000}

输入In:

dict_sale.popitem()   #删除并返回最后一对键值对

输出Out:

('孙权', 420000)

输入In:

dict_sale

输出Out:

{'周瑜': 486296}

输入In:

#解散所有员工
dict_sale.clear()
dict_sale

输出Out:

{}

输入In:

del dict_sale
dict_sale           #删除字典了,所以报错,报错信息如下:

输出Out:

---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-31-319fcc0b91b2> in <module>()
----> 1 dict_sale           #删除字典了,所以报错

NameError: name 'dict_sale' is not defined

 

1.5.3 查找

输入In:

dict1 = dict(zip(["a","b","c"],(1,2,3)))
dict1

输出Out:

{'a': 1, 'b': 2, 'c': 3}

输入In:

"a" in dict1

输出Out:

True

输入In:

3 in dict1

输出Out:

False

输入In:

dict1.get("c")

输出Out:

3

输入In:

dict1.get("a","没有这个关键字")

输出Out:

1

 

1.5.4 查看字典的关键字

输入In:

dict1

输出Out:

{'a': 1, 'b': 2, 'c': 3}

输入In:

dict1.values()

输出Out:

dict_values([1, 2, 3])

输入In:

dict1.keys()

输出Out:

dict_keys(['a', 'b', 'c'])

输入In:

dict1.items()

输出Out:

dict_items([('a', 1), ('b', 2), ('c', 3)])

 

1.5.5 例子

  • 计算平均值

输入In:

dict2 = {"小红" : 85,"小敏" : 92,"小丽" : 88}  #求三人的平均值
dict2

输出Out:

{'小丽': 88, '小敏': 92, '小红': 85}

方案:

输入In:

#循环方法
for i in dict2.values():
    print(i)

输出Out:

85
92
88

输入In:

s = 0
for i in dict2.values():
    s += i
print("所有同学的平均分是{:.2f}".format(s/len(dict2)))

输出Out:

所有同学的平均分是88.33

 

 

2 集合

集合是一种无序可变的容器,对应于数学中的集合,标志性符号是{}

集合中没有重复值,集合中的元素值必须是不可变的数据类型

 

2.1 集合定义

例如:

输入In:

set1 = {1,2,3,4}
set1

输出Out:

{1, 2, 3, 4}

输入In:

type(set1)

输出Out:

set

 

2.2 通过set函数定义集合

例如:

输入In:

set2 = set(["1","2","3"])
set2

输出Out:

{'1', '2', '3'}

输入In:

list3 = list("abcdeabc")
list3

输出Out:

['a', 'b', 'c', 'd', 'e', 'a', 'b', 'c']

输入In:

#去除list3中重复的元素
set(list3)

输出Out:

{'a', 'b', 'c', 'd', 'e'}

输入In:

list(set(list3))

输出Out:

['b', 'd', 'a', 'e', 'c']

 

标签:输出,python,sale,学习,dict,字典,输入,Out
From: https://www.cnblogs.com/wyy-25/p/18214269

相关文章

  • HarmonyOS NEXT星河版ArkTS 语法 学习笔记
    基础练习:console.log("你好,","11111")//let变量名:类型=值lettitle:string='奥利奥水果'letprice:number=21.8letisSelect:Boolean=trueconsole.log(title,price,isSelect)//变量的改变值title='燕麦水果捞'console.log('......
  • 深度学习导论及案例分析 (李玉鑑 张婷)
    链接:pan.baidu.com/s/1tIHXj9HmIYojAHqje09DTA?pwd=jqso提取码:jqso深度学习起源与发展:介绍深度学习如何从神经网络演变而来,并强调其历史发展脉络和重要性。深度学习基本概念:阐述深度学习的基本定义、特点和优势,为后续内容打下理论基础。判别模型与生成模型:解释判别模型和生成......
  • 深度学习:Caffe之经典模型详解与实战 (乐毅 王斌)
    链接:pan.baidu.com/s/1tIHXj9HmIYojAHqje09DTA?pwd=jqso提取码:jqsoCaffe框架介绍:简要介绍Caffe框架的起源、发展及其在深度学习领域的重要地位,阐述其模块化、可扩展性和易用性的设计原则。深度学习与Caffe基础:概述深度学习的基本概念、原理以及Caffe框架的核心组件,包括网络层......
  • 2024电工杯数学建模B题Python代码+结果表数据教学
    2024电工杯B题保姆级分析完整思路+代码+数据教学B题题目:大学生平衡膳食食谱的优化设计及评价 以下仅展示部分,完整版看文末的文章importpandasaspddf1=pd.read_excel('附件1:1名男大学生的一日食谱.xlsx')df1#获取所有工作表名称excel_file=pd.ExcelFile('附件1......
  • 线段树分裂 学习笔记
    过程线段树分裂是线段树合并的逆操作,即将一个区间信息分裂到新的树中,新的树一般需要新建。注意当分裂和合并都存在时,我们在合并的时候必须回收节点,以避免分裂时会可能出现节点重复占用的问题。时间复杂度显然\(\mathcal{O}(\logn)\)。实现//将x分裂出[p,q]到now上v......
  • 线段树合并 学习笔记
    过程合并并不困难,对于两棵线段树,合并无疑就是就两棵线段树维护的区间信息进行合并。就比如,有两棵线段树如下图:将第二棵树合并到第一棵树,就是把除了维护\([2,2]\)的全部对应加,而\([2,2]\)则新开节点维护。时间复杂度显然\(\mathcal{O}(n\logn)\)。实现intMerge(i......
  • 2024-05-26 英语学习纪要
    今天在bilibili上面看到一个视频链接/slash*asterisk-hypen_underscore:colon';'semicolon&ampersandi.e.e.g.这些似乎都是拉丁语翻译来的。i.e.inotherwords换句话说ATMautomatedtellermachine不认识teller,我猜是出纳员之类的意思,猜对了PDFporta......
  • 力扣 32. 最长有效括号 python AC
    动态规划classSolution:deflongestValidParentheses(self,s):s=''+ssize=len(s)dp=[0]*sizeforiinrange(2,size):ifs[i]==')':ifs[i-1]=='(':......
  • Python办公自动化之——调整Word样式
    在Word排版中,许多繁琐的功能,如文本格式设置、段落对齐、表格操作和图片插入,常常消耗大量时间和精力。借助Python自动化处理,这些任务变得更加高效,python-docx库为我们提供了极大的帮助。通过该库,可以轻松读取和学习现有文档的样式和格式,并将其应用到新的文档中。这样,用户可以自动......
  • Python学习(二)
    python内置函数abs(x):返回x的绝对值pow(x,n):返回x的n次方max(n1,n2,n3,...)返回最大值min(n1,n2,n3,...)返回最小值round(x[,n])默认返回浮点数四舍五入的值,遇到0.5取偶数sum(iterable,start=0),返回start值(默认值为0)加上可迭代数字的总和例如,输入In:......