Wie formatiere ich eine Telefonnummer in Python am besten?
Wenn alle, die ich habe ist eine Kette von 10 oder mehr stellen, wie kann ich dieses format als eine Telefonnummer?
Einige triviale Beispiele:
555-5555
555-555-5555
1-800-555-5555
Ich weiß, das sind nicht die einzigen Möglichkeiten, zu formatieren, und es ist sehr wahrscheinlich, ich lasse Dinge aus, wenn ich es selbst tun. Gibt es eine python-Bibliothek oder standard formatieren Telefonnummern?
InformationsquelleAutor der Frage Joe | 2011-08-14
Du musst angemeldet sein, um einen Kommentar abzugeben.
für die Bibliothek: phonenumbers (pypiQuelle)
Die readme nicht ausreichend ist, aber ich fand, der code ist gut dokumentiert.
InformationsquelleAutor der Antwort kusut
Scheint, wie Ihre Beispiele formatiert mit drei Ziffern Gruppen mit Ausnahme der letzten, können Sie schreiben eine einfache Funktion, verwendet tausend seperator und fügt hinzu, Letzte Ziffer:
InformationsquelleAutor der Antwort utdemir
Hier ist ein angepasster von utdemir Lösung und diese Lösungdass die Arbeit mit Python 2.6,", " formatter neu ist in Python 2.7.
InformationsquelleAutor der Antwort Jonathan Mabe
Eine einfache Lösung könnte sein, beginnen auf der Rückseite und legen Sie den Bindestrich nach vier zahlen, dann tun Sie Gruppen von drei bis zum Beginn des Strings erreicht ist. Ich bin mir nicht bewusst eine integrierte Funktion oder etwas ähnliches.
Vielleicht finden Sie diese hilfreich:
http://www.diveintopython3.net/regular-expressions.html#phonenumbers
Regulären Ausdrücken wird nützlich sein, wenn Sie akzeptieren Benutzer die Eingabe von Telefonnummern. Ich würde nicht den genauen Ansatz unter dem oben genannten link. Etwas einfacher, wie nur Strippen aus Ziffern, ist wahrscheinlich einfacher und genauso gut.
Auch, einfügen von Kommas in zahlen ist ein analoges problem, das gelöst wurde effizient an anderer Stelle und angepasst werden können, um dieses problem.
InformationsquelleAutor der Antwort ChrisP