现在Python 2.6已经出来了,每个程序员都应该知道当前语言中的哪些模块?

StackOverflow https://stackoverflow.com/questions/168727

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对象。

真的很方便。

可以 PEP 0631 2.6中的新功能可以提供答案元素。最后一篇文章解释了2008年10月1日发布的Python 2.6中的新功能。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top