Formatieren Sie die Telefonnummer in CSV mit Pandas

Python / Pandas n00b. Ich habe Code, der Ereignisdaten verarbeitet, die in csv-Dateien gespeichert sind. Daten vondf["CONTACT PHONE NUMBER"] gibt die Telefonnummer als "5555551212.0" aus Offensichtlich ist die ".0" ein Problem, aber hinzugefügt, weil es eine Ganzzahl ist, stelle ich mir vor?

Jedenfalls habe ich beschlossen, die Telefonnummer aus Gründen der Benutzerfreundlichkeit zu formatieren.

Die Nummer stammt aus der CSV-Datei, unformatiert. Die Nummer wird immer zehnstellig sein: 5555551212, aber ich möchte sie als (555) 555-1212 anzeigen.

import glob
import os
import pandas as pd
import sys

csvfiles = os.path.join(directory, '*.csv')
for csvfile in glob.glob(csvfiles):
    df = pd.read_csv(filename)
    #formatting the contact phone
    phone_nos = df["CONTACT PHONE NUMBER"]
    for phone_no in phone_nos:
        contactphone = "(%c%c%c)%c%c%c-%c%c%c%c" % tuple(map(ord,phone_no))

Die letzte Zeile gibt mir den folgenden Fehler:not enough arguments for format string

Aber vielleicht ist das nicht der Weg der Pandas, dies zu tun. Da ich durch ein Array iteriere, muss ich auch die Daten in der vorhandenen Spalte speichern oder diese Spalte neu erstellen, nachdem die Telefonnummern verarbeitet wurden.