python标准库

4 本我 3小时前 66次点击

一份记录,如果你也在找语言的各种模块请直接复制后文的网址

要了解Python标准库,一个资源是网站Python Module of the Week。

请访问http://pymotw.com/

并查看其中的目录,在其中找一个你感兴趣的模块进行探索,或阅读模块collections和random的文档。

我在帖子里拿collections举例

如果网站自动翻译请恢复到英文

拿争渡的大小写+ctrl+s搜索collections

按下s找到collections — Container Data Types 链接 已访问

再搜索OrderedDict回车进入

这个便是 集合 — 容器数据类型

OrderedDict — 记住,顺序键是添加到词典中的

An 是一个词典子类,记得 内容添加的顺序。 OrderedDict

里面的内容最好复制下来再剪贴板里查看,不然阅读起来很麻烦,下面是复制的一份.py文件

# collections_ordereddict_iter.py

import collections

print('Regular dictionary:')

d = {}

d['a'] = 'A'

d['b'] = 'B'

d['c'] = 'C'

for k, v in d.items():

print(k, v)

print('\nOrderedDict:')

d = collections.OrderedDict()

d['a'] = 'A'

d['b'] = 'B'

d['c'] = 'C'

for k, v in d.items(): print(k, v)

你可以把内容复制到记事本中再把后缀改成.py也就是python的格式

再在此电脑里打开你的文件位置按下alt+d输入cmd快速打开cmd,这时cmd会默认打开你所在的文件夹

输入:python 你的文件名.py

可以看一下输出有没有按照自己预想的顺序排列

在 Python 3.6 下,内置功能确实会跟踪插入顺序, 尽管这种行为是实现变更的副作用 不应依赖。 dict

下面的是输出的内容也许你的和我的顺序不一样

Regular dictionary:

a A

b B

c C

OrderedDict:

a A

b B

c C

共 2 条评论
0 

<p>哎,这个帖子不错啊,pymotw这个网站确实是个好东西,以前学python的时候翻过不少次。楼主用争渡来演示collections的操作步骤也写得很细致,这个OrderedDict的例子选得好,因为dict在3.7之前不保证插入顺序,很多人初学的时候确实容易被这个坑到。</p><p>不过补充一点哈,从Python 3.7开始,普通dict的插入顺序保证已经正式写进语言规范了,不再只是实现细节。所以如果用的是3.7以上的版本,OrderedDict和普通dict在顺序这块行为其实是一样的。当然OrderedDict还是有些独门绝技的,比如它有move_to_end()和popitem(last=True)这些方法,需要做LRU缓存之类的场景还是很好用。</p><p>另外pymotw这个网站对应的py3版本是pymotw.com/3,楼主帖子里给的是默认入口,可能有些人点进去看到的是py2的内容,注意区分一下就好哈哈。</p>

向阳而生yu 2小时前
0 

厉害了,点赞。

添加一条新评论

登录后可以发表评论 去登录