python字典菜鸟教程,python字典的操作方法
本文主要介绍python字典及相关操作,通过实例代码详细介绍,有一定的参考价值,感兴趣的朋友可以参考一下。
00-1010什么是字典?创建一个字典,向原始字典添加“键-值”对,修改字典中的值,并删除键-值对。由相似对象组成的字典遍历字典。
目录
Dictionary是Python中最强大的数据类型之一,也是Python语言中唯一的映射类型。映射对象中的哈希值(key)和所指向的对象(value)是一对多的关系,通常认为是可变哈希表。dictionary对象是变量,它是一种容器类型,可以存储任意数量的Python对象,包括其他容器类型。
字典类型和序列类型的区别:
1.访问和存取数据的不同方式。
2.序列类型只使用数字键(从序列的开始按数字顺序索引);
3.映射类型可以使用其他对象类型作为键(如数字、字符串和元组,字符串一般用作键)。与序列类型的键不同,映射类型的键是直的。
4.与存储的数据值相关联或间接关联。
5.映射类型中的数据是无序排列的,这与序列类型不同,序列类型是按数字顺序排列的。
6.映射类型直接“映射”到带有键的值。
总之,Python中的字典是一系列“键-值”对。每个键都与一个值相关联,您可以使用该键来访问与之相关联的值。与键相关的值可以是数字、字符串、列表甚至字典。事实上,任何Python对象都可以用作字典中的值。
一个简单字典的例子:
学生_ a={ 姓名 : 艾伦,年龄 3360 14 ,年级 3360 8} #定义词典
print(student_A[name])
打印(学生_A[年龄])
print(student_A[grade])
new_names=student_A[name]
new_ages=student_A [age]
new_grades=student_A [grade]
print(学生A的名字是 new_names.title(),她是 str(new_ages)岁,年级是 str(new_grades))
其中,student_A={name : Allen , age 3360 14 , grade 3360 8}定义了一个名为student_A的字典,字典中有 name , age 和 grade 三个关键字。
Student_A[name]是指student_A[name]的值,即Allen,也就是说:new_names=student_A[name]和new_names=Allen 这两个语句是相同的。
什么是字典
1)如上面的代码,直接定义一个字典,student _ a={name : Allen , age 3360 14 , grade 3360 8},列出关键字和对应的值;
2)先用一对花括号定义一个字典,然后在每个分支中添加每个键值对:
student_B={}
学生_B[姓名]=杰克
学生_B[年龄]=13
student_B[grade]=7
创建一个字典
因为字典是可变的,可以存储任意数量的对象,所以可以随意添加。
Student_A[address]=湖北 #增加了一个地址键对,由原来的三个增加到四个。
Student_A[ phone number ]= 18012345678 #增加了一个电话键对,字典student _ A从4改为5。
Print(student_A) #键-值对的顺序和加法
顺序不同。Python不关心键-值对的添加顺序,而只关心键和值之间的关联关系
即在student_A字典原有3个关键字的基础上,增加了两个关键字address和PhoneNumber。
上述代码运行结果:
修改字典中的值
要修改字典中的值,可依次指定字典名、用方括号括起的键以及与该键相关联的新值。
student_B[age]=14 #修改student_B的age值为14print(student_B)
print("\n")
删除键-值对
对于字典中不再需要的信息,可使用 del 语句将相应的键-值对彻底删除。使用 del 语句时,必须指定字典名和要删除的键。
del student_A[address]print(student_A)
由类似对象组成的字典
字典存储的是一个对象(学生A或B)的多种信息,但也可以使用字典来存储众多对象的同一种信息
favor_languages = {jack: python,sarah: c,lucy: ruby,phil: python}print(favor_languages[lucy])
遍历字典
一个Python字典可能只包含几个键-值对,也可能包含数百万个键-值对。鉴于字典可能包含大量的数据,Python支持对字典遍历。字典可用于以各种方式存储信息,因此有多种遍历字典的方式:可遍历字典的所有键-值对、键或值。
for key,value in student_A.items():# 注意,student_A后增加了.items() 用于读取字典中的每一项print("\nKey: " + key) #打印出关键字
print("Value: " + value) #打印出关键字的值
for name, language in favor_languages.items(): #遍历所有的键值对:用于遍历字典的for循环,可声明两个变量,用于存储键-值对中的键和值
print(name.title() + "s favorite language is " +language.title() + ".") #遍历字典中的每个键-值对,并将键存储在变量name中,而将值存储在变量language 中
for name in favor_languages.keys():#遍历字典中的所有键,在不需要使用字典中的值时,方法 keys() ,注意后面增加的keys()
print(name.title())
print("\n")
my_friends = [jack, sarah]
for name in favor_languages.keys():
print(name.title())
if name in my_friends:
print(" Hi " + name.title() +", I see your favorite language is " +favor_languages[name].title() + "!")
具体运行结果:
按顺序遍历字典中的所有键:字典记录键和值之间的关联关系,但获取字典的元素的顺序是不可预测的,要以特定的顺序返回元素,可对返回的键进行排序可使用函数 sorted() 来进行排序。
favor_languages= {jack: python,polo: java,lucy: ruby,Albet: java}#使用函数 sorted() 来获得按特定顺序排列的键列表
for name in sorted(favor_languages.keys()): #对关键字进行排序
print(name.title() + ", thank you !")
print("\n")
#遍历字典中的所有值:如果主要获取的是字典包含的值,可使用方法 values()
for language in favor_languages.values():
print(language.title())
print("\n")
#使用集合(set)消除重复项
for language in set(favor_languages.values()):
print(language.title())
运行结果如下:
到此这篇关于详解python的字典及相关操作的文章就介绍到这了,更多相关python字典及相关操作内容请搜索盛行IT软件开发工作室以前的文章或继续浏览下面的相关文章希望大家以后多多支持盛行IT软件开发工作室!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。