Je souhaite créer un script qui renvoie le jour de la semaine, s est une chaîne qui représente le jour de la semaine, et
k est un entier qui renvoie le jour de la semaine qui est K jours plus tard.
Voici mon code:
weekday = {
"Mon": 0,
"Tue": 1,
"Wed": 2,
"Thu": 3,
"Fri": 4,
"Sat": 5,
"Sun": 6
}
def wd(s, k):
s = list(weekday.values())[list(weekday.keys()).index(s)]
k %= 7
result = s + k
return result
print(wd('Sat', 23))
3 Réponses :
Essayez ceci,
weekday = {
"Mon": 0,
"Tue": 1,
"Wed": 2,
"Thu": 3,
"Fri": 4,
"Sat": 5,
"Sun": 6
}
def wd(s, k):
s = list(weekday.values())[list(weekday.keys()).index(s)]
k %= 7
result = (s + k) % 7
return result
for key, value in weekday.items():
if value == wd('Sat', 1):
print(key)
Merci! Maintenant, comment le représenter sous forme de chaîne? Dans ce cas, s = 'Sat', k = 23, sortie: 'Mon'
pour la clé, valeur en jour de la semaine.items (): if value == wd ('Sat', 1): print (key)
Utilisez le module calendrier :
0
Sortie:
import calendar
def wd(s, k):
return (dict(zip(list(calendar.day_abbr), range(7)))[s] + k % 7) % 7
print(wd('Sat', 23))
Vous pouvez utiliser la fonction suivante:
lst = list(weekday.keys())
def wd(s, k):
return lst[weekday[s] + k % 7]
print(wd('Mon', 1))
# Tue