脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - python基础入门之字典和集合

python基础入门之字典和集合

2021-11-30 10:20不问前世 Python

Python中的字典和集合是非常相似的数据类型,字典是无序的键值对。集合中的数据是不重复的,并且不能通过索引去修改集合中的值,我们可以往集合中新增或者修改数据。集合是无序的,并且支持数学中的集合运算,例如并集和

python 中有6大标准类型:

?
1
2
3
4
5
6
数字(number)
字符串(string)
列表(list
元组(tumple)
集合(set
字典(dictionary)

前面已经介绍了上面4种,还有下面两种来介绍一下。

正文

字典

字典看起来非常像json,是的非常非常像,但是我们起码需要明白的是json是一个字符格式,而字典是一种数据结构。

区别:

  • 1)json的key只能是字符串,dict的key可以是任何可hash的对象,例如:字符串、数字、元组等。
  • 2)json的key可以是有序、重复的;dict的key不可重复;
  • 3)json的value只能是字符串、浮点数、布尔值或者null,或者它们构成的数组或者对象;
  • 4)json任意key存在默认值undefined,dict默认没有默认值;
  • 5)json访问方式可以是[],也可以是.,遍历方式分in,of; dict的value仅仅可以下标访问;
  • 6)dict可以嵌套tuple,json里只有数组
  • 7)json:true、false、null
  • 8)dict:true、false、none
  • 9)json中文必须是unicode编码,如“\u6211”
  • 10)json的类型时字符串,字典的类型是dict

总之,他们只是看起来像而已,但是并没有什么血缘关系,可以看做异父异母的亲兄弟吧。

创建一个字典:

?
1
2
3
4
5
# coding: utf-8
test1={'name':"zhang san",
    'age':18
}
print(test1);

这样就ok了,是的没有错,这样就建立了一个字典。

值得注意的是,我在上面注释了一行:coding: utf-8,如果没有这个python 无法解析中文,并给你抛出一个异常。

如果你新增一个值,那么:

?
1
2
3
4
5
6
# coding: utf-8
test1={'name':"zhang san",
    'age':18
}
test1["school"]="primary";
print(test1);

这样就可以了,你的key和value 可以是任意类型的值,这和静态语言不一样。

你可以在字典中套用列表:

?
1
2
3
4
5
6
7
# coding: utf-8
test1={'name':"zhang san",
    'age':18
}
test1["school"]="primary";
test1["friend"]=["tony","tom","lily"];
print(test1);

当然,你还可以在列表中套用字典。

?
1
2
3
4
5
6
7
8
# coding: utf-8
test1={'name':"zhang san",
    'age':18
}
test1["school"]="primary";
test1["friend"]=["tony","tom","lily"];
student=[test1];
print(student);

[{'age': 18, 'name': 'zhang san', 'friend': ['tony', 'tom', 'lily'], 'school': 'primary'}]

你会发现,它对数据的支持真的太好了,如果你有一些数据的功能需要处理,python觉得是一个很好的选择。

集合

创建一个集合同样非常的简单:

?
1
2
3
# coding: utf-8
test1={"1",1}
print(test1);

输出:set(['1', 1])

没错,就是一个大括号,然后里面写了一些object,接着set就生成了。

set 有一些函数,需要都去试一试,你会发现一些非常方便的功能,这样你在开发的时候就不用查找某个查询该怎么写,事实上大部分都提供了。

python基础入门之字典和集合

到此这篇关于python基础入门之字典和集合的文章就介绍到这了,更多相关python 字典和集合内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://www.cnblogs.com/aoximin/p/14054836.html

延伸 · 阅读

精彩推荐