现在Python 2.6已经出来了,每个程序员都应该知道当前语言中的哪些模块?
-
03-07-2019 - |
题
Python中的许多有用功能在某种程度上都是“隐藏”的。内部模块。例如,命名元组( Python 2.6 中的新元组)可在集合模块。
图书馆文档页面将为您提供该语言的所有模块,但Python的新手他们可能会发现自己说“哦,我不知道我可以用这种方式使用Python做到这一点!”除非有经验的开发人员指出该语言的重要特征。
我不专门在Python 2.6中寻找新模块,但可以在最新版本中找到模块。
解决方案
基本图书馆
有经验的程序员从另一种语言到Python的主要挑战是弄清楚一种语言如何映射到另一种语言。以下是一些基本库以及它们与Java等价物的关系。
os, os.path
具有java.io.File,java.lang.Process等功能。但更干净,更复杂,具有Unix风味。使用os.path而不是os来获得更高级别的功能。
sys
操纵sys.path(类似于类路径),注册退出处理程序(如java Runtime对象),并访问标准I / O流,如java.lang.System中所示。
unittest
非常相似(并且基于)jUnit,带有测试夹具和可运行的线束。
logging
功能与log4j和logger几乎完全相同。 (日志记录也在标准的java.util.Logging库中)
datetime
允许解析和格式化日期和时间,例如java.text.DateFormat,java.util.Date和相关内容。
ConfigParser
允许在java Properties文件中进行持久配置(但也允许嵌套)。当您不想要XML或数据库后端的复杂性时,请使用此方法。
socket, urllib
与java.net中的功能类似,用于处理套接字或通过URL / URI检索内容。
另外,请记住,许多基本功能(如读取文件和使用集合)都在核心python语言中,而在Java中则存在于包中。
其他提示
最令人印象深刻的新模块可能是 multiprocessing
模块。首先,因为它允许您使用与 threading
模块大致相同的API,在新流程中执行功能。但更重要的是因为它为进程之间的通信引入了许多优秀的类,例如 Queue
类和 Lock
类,每个类都使用就像那些对象一样。多线程代码,以及用于在进程之间共享内存的一些其他类。
您可以在 http://docs.python.org/library/multiprocessing上找到相关文档。 html的
新 json
模块真是太棒了网络程序员!! (在合并到标准库之前,它被称为 simplejson
。 )
使用起来非常简单: json.dumps(obj)
将内置类型的Python对象编码为JSON字符串,而 json.loads(string)
将JSON字符串解码为Python对象。
真的很方便。