Теперь, когда вышел 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 (который похож на classpath), регистрируйте обработчики выхода (как в объекте времени выполнения java) и обращайтесь к стандартным потокам ввода-вывода, как в java.lang.System.

unittest 

Очень похожий (и основанный на) jUnit, с тестовыми приборами и работающими жгутами.

logging 

Функциональность почти идентична log4j с уровнями и регистраторами. (ведение журнала также находится в стандартной библиотеке java.util.Logging)

datetime  

Позволяет анализировать и форматировать даты и время, как в java.text.DateFormat, java.util.Date и связанных с ними.

ConfigParser  

Разрешает постоянную настройку, как в файле свойств Java (но также позволяет вложение). Используйте это, когда вы не хотите, чтобы сложность XML или базы данных.

socket, urllib 

Функциональность, аналогичная той, что есть в java.net, для работы с сокетами или для получения контента через URL / URI.

Также имейте в виду, что многие базовые функции, такие как чтение файлов и работа с коллекциями, написаны на основном языке Python, тогда как в Java он живет в пакетах.

Другие советы

Самым впечатляющим новым модулем, вероятно, является модуль multiprocessing . Во-первых, потому что он позволяет выполнять функции в новых процессах так же легко и с примерно тем же API, что и в модуле threading . Но что более важно, потому что он вводит много отличных классов для взаимодействия между процессами, таких как класс 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 может предоставить элементы ответа. В этой последней статье описываются новые функции Python 2.6, выпущенные 1 октября 2008 года.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top