384 Stimmen

Monatsname aus Nummer ermitteln

Wie kann ich den Monatsnamen aus der Monatsnummer ermitteln?

Zum Beispiel, wenn ich 3 Ich möchte zurückkehren. march

date.tm_month()

Wie man die Zeichenfolge erhält march ?

6voto

chaim glancz Punkte 71

01' bis 'Jan'

from datetime import datetime

datetime.strptime('01', "%m").strftime("%b")

3voto

Kamal Zaitar Punkte 7

Anstatt eine neue Bibliothek zu importieren oder herunterzuladen, können Sie meine manuelle Funktion verwenden:

Kopieren Sie den Code in eine neue .py-Datei und führen Sie ihn aus

kurze Erklärung:

Ändern Sie Ihre_Zahl und drucken Sie month_from_number, erhalten Sie den Monat

    your_number = 10

    def num_to_month(*args, **kwargs):

        num = kwargs.get("num", None)

        if int(num) <= 12 and int(num) > 0:

            list_of_months = {'1': 'January', '2': 'February', '3': 'March',
                              '4': 'April', '5': 'May', '6': 'June', '7': 'July',
                              '8': 'August', '9': 'September', '10': 'October',
                              '11': 'November', '12': 'December'}

            return list_of_months[num]

        else:

            print('num_to_month function error: "num=' + str(num) + '"')

    month_from_num = num_to_month(num=your_number)

    print(month_from_num)

das Ergebnis wird Oktober sein

2voto

Mehtab Pathan Punkte 443

Für einen beliebigen Bereich von Monatsnummern

month_integer=range(0,100)
map(lambda x: calendar.month_name[x%12+start],month_integer)

ergibt eine korrekte Liste. anpassen start -Parameter, ab dem der Januar in der Liste der ganzzahligen Monate beginnt.

2voto

Jane Kathambi Punkte 470

Dieses Skript zeigt, wie man die Abkürzungen der Kalendermonate für eine Monatsvariable/-spalte in einem Datenrahmen ermittelt. Es wird davon ausgegangen, dass die Werte der Monatsspalte/-variable alle Zahlen sind und möglicherweise einige Werte fehlen.

# Import the calendar module
  import calendar

# Extract month as a number from the date column
  df['Month']=pd.DatetimeIndex(df['Date']).month

# Using list comprehension extract month abbreviations for each month number
 df['Month_abbr']=[calendar.month_abbr[int(i)] if pd.notna(i) else i for i in df['Month']]

1voto

Salva. Punkte 91

Wenn Sie nur die Monatsnummer und keine Datetime-Instanz haben, könnten Sie eine kleine Funktion erstellen, um die Nummer mit dem Label wie folgt zu verknüpfen:

def monthname(m):
    d={1:'En',2:'Fe',3:'Mr',4:'Ab',5:'My',6:'Jn',7:'Jl',8:'Ag',9:'Se',10:'Oc',11:'No',12:'Di'}
    return d[m]

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X