Теперь, когда вышел 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 (который похож на 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 года.