Теперь, когда вышел Python 2.6, о каких модулях в настоящее время должен знать каждый программист? - PullRequest
9 голосов
/ 04 октября 2008

Многие полезные функции в Python несколько «спрятаны» внутри модулей. Именованные кортежи (например, новые в Python 2.6 ) находятся в модуле collection .

Страница документации библиотеки предоставит вам все модули на этом языке, но новички в Python, скорее всего, скажут: "О, я не знал, что мог это сделать это способ с использованием Python! " если только опытные разработчики не отметят важные особенности языка.

Я не специально ищу новые модули в Python 2.6, но модули, которые можно найти в этом последнем выпуске.

Ответы [ 4 ]

12 голосов
/ 04 октября 2008

Самый впечатляющий новый модуль - это, вероятно, модуль multiprocessing. Во-первых, потому что он позволяет выполнять функции в новых процессах так же легко и с примерно тем же API, что и в модуле threading. Но что более важно, потому что он вводит много отличных классов для взаимодействия между процессами, таких как класс Queue и класс Lock, каждый из которых используется точно так же, как эти объекты будут в многопоточном коде, а также некоторые другие классы для разделение памяти между процессами.

Документацию можно найти по адресу http://docs.python.org/library/multiprocessing.html

6 голосов
/ 04 октября 2008

новый json модуль - настоящая находка для веб-программистов! (Он был известен как simplejson до объединения в стандартную библиотеку.)

Смехотворно прост в использовании: json.dumps(obj) кодирует объект Python встроенного типа в строку JSON, а json.loads(string) декодирует строку JSON в объект Python.

Действительно очень удобно.

5 голосов
/ 04 октября 2008

Может быть PEP 0631 и Что нового в 2.6 может обеспечить элементы ответа. В этой последней статье описываются новые функции Python 2.6, выпущенные 1 октября 2008 года.

3 голосов
/ 02 декабря 2008

Основные библиотеки

Основная задача для опытного программиста, переходящего с другого языка на 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 он живет в пакетах.

...