Ora che Python 2.6 è uscito, quali moduli attualmente nella lingua dovrebbero conoscere tutti i programmatori?

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

Domanda

Molte funzioni utili in Python sono in qualche modo "nascoste" moduli interni. Le tuple nominate (nuove in Python 2.6 ), ad esempio, si trovano nella collezioni .

La Pagina della documentazione della biblioteca ti darà tutti i moduli nella lingua, ma i nuovi arrivati ??in Python probabilmente si ritroveranno a dire " Oh, non sapevo che avrei potuto farlo in questo modo usando Python! " a meno che le caratteristiche importanti della lingua non siano indicate dagli sviluppatori esperti.

Non sono non specificamente alla ricerca di nuovi moduli in Python 2.6, ma moduli che possono essere trovati in quest'ultima versione.

È stato utile?

Soluzione

Librerie essenziali

La sfida principale per un programmatore esperto che proviene da un'altra lingua a Python è capire come una lingua è mappata a un'altra. Ecco alcune librerie essenziali e il modo in cui si collegano agli equivalenti Java.

os, os.path 

Ha funzionalità come in java.io.File, java.lang.Process e altri. Ma più pulito e sofisticato, con un sapore Unix. Utilizzare os.path anziché os per funzionalità di livello superiore.

sys 

Manipola sys.path (che è come il classpath), registra i gestori di uscita (come nell'oggetto Java Runtime) e accedi ai flussi I / O standard, come in java.lang.System.

unittest 

jUnit molto simile (e basato su), con dispositivi di prova e imbragature gestibili.

logging 

Funzionalità quasi identica a log4j con loglevels e logger. (la registrazione è anche nella libreria standard java.util.Logging)

datetime  

Permette di analizzare e formattare date e orari, come in java.text.DateFormat, java.util.Date e relativi.

ConfigParser  

Consente la configurazione permanente come in un file Proprietà java (ma consente anche l'annidamento). Utilizzare questo quando non si desidera la complessità di XML o un back-end del database.

socket, urllib 

Funzionalità simile a quella di java.net, per lavorare con entrambi i socket o per recuperare contenuti tramite URL / URI.

Inoltre, tieni presente che molte funzionalità di base, come leggere i file e lavorare con le raccolte, sono nel linguaggio core di Python, mentre in Java vive in pacchetti.

Altri suggerimenti

Il nuovo modulo più impressionante è probabilmente il modulo multiprocessing . Innanzitutto perché ti consente di eseguire funzioni in nuovi processi con la stessa facilità e con approssimativamente la stessa API che faresti con il modulo threading . Ma ancora più importante perché introduce molte grandi classi per comunicare tra processi, come una classe Queue e una classe Lock che sono usate ciascuna come in quegli oggetti codice multithread, nonché alcune altre classi per la condivisione della memoria tra processi.

Puoi trovare la documentazione su http://docs.python.org/library/multiprocessing .html

Il nuovo modulo json è un vero vantaggio ai programmatori web !! (Era noto come simplejson prima di essere unito alla libreria standard. )

È ridicolmente facile da usare: json.dumps (obj) codifica un oggetto Python di tipo incorporato in una stringa JSON, mentre json.loads (stringa) decodifica una stringa JSON in un oggetto Python.

Davvero davvero utile.

Può essere PEP 0631 e Le novità di 2.6 possono fornire elementi di risposta. Questo ultimo articolo spiega le nuove funzionalità di Python 2.6, rilasciate il 1 ° ottobre 2008.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top