Tenho esta função que converte um mês inglês para um mês francês:
def changeMonth(month):
global CurrentMonth
match month:
case "Jan":
return "Janvier"
case "Feb":
return "Février"
case "Mar":
return "Mars"
case "Apr":
return "Avril"
case "May":
return "Mai"
case "Jun":
return "Juin"
case "Jul":
return "Juillet"
case "Aug":
return "Août"
case "Sep":
return "Septembre"
case "Oct":
return "Octobre"
case "Nov":
return "Novembre"
case "Dec":
return "Décembre"
# If an exact match is not confirmed, this last case will be used if provided
case _:
return ""
e eu tenho um col de pandas df["month"]= df['ic_graph']['month'].tolist()
:
agora o que estou procurando é passar a coluna df["mês"] pela função changeMonth para exibir o df["mês"] em meses franceses
A propósito, não quero usar o
>>> import locale
>>> locale.setlocale(locale.LC_ALL, 'fr_FR')
Vamos usar o contexto python como
calendar.different_locale
este:Saída:
Sua função changeMonth() é boa, mas você não precisa da linha global CurrentMonth (ela é desnecessária, a menos que você modifique especificamente uma variável global, o que você não está fazendo aqui).
Agora, se você quiser aplicá-lo manualmente a uma coluna pandas, você pode usar .apply() no seu DataFrame
A pergunta me parece um pouco confusa.
Você quer substituir a coluna do mês no próprio dataframe?
Se sim, algo assim pode funcionar:
Mas se você quiser alterar o mês enquanto apenas imprime a lista, você pode usar a compreensão de lista,