0
votes

Deuxième mardi dernier pour chaque mois

Comment obtenir la date de deuxième mardi dernier pour le mois? XXX

J'ai besoin d'imprimer la date de deuxième mardi dernier de ce mois qui est 20ème dans ce cas particulier, mais il devrait travailler pour chaque mois. S'il vous plaît conseiller comment cela pourrait être fait?


0 commentaires

3 Réponses :


0
votes

Vous pouvez essayer ceci.

weeks=str.split('\n')
if len(weeks[-1].split())<3: print(weeks[-3][2])
else: print(weeks[-2][2])


1 commentaires

S'il vous plaît dire si cela fonctionne. Je suis nouveau et cela aiderait mon estime de soi.



1
votes

Delta relative à la rescousse!

Vous voudrez faire quelque chose comme:

  1. Obtenez la dernière date du mois
  2. Convertissez cette date à une journée en utilisant Relative DeTla
  3. Travaillez la journée en arrière à un mardi par date (c'est le mardi dernier du mois)
  4. Soustrayez une semaine à partir de cette date

    Comme vous pouvez le dire, faites attention à la date et au jour


3 commentaires

J'ai utilisé: maintenant + relativèselta (jour = 31, jour de semaine = tu (-2)) du delta relatif. J'essaie juste de comprendre pourquoi ai-je même besoin de spécifier jour = 31?


Le delta relatif est "relatif" à quoi que ce soit avec le temps. 31 jours sont les plus longs chaque mois peuvent être, alors "relativement" son dernier jour de chaque mois. Cela a-t-il du sens?


Je suppose que, alors pourquoi avez-vous spécifié 31 puisqu'il ne peut y aller plus de toute façon? Je pense juste que s'il va y avoir une raison quelconque, quiconque aurait besoin d'utiliser 28.



1
votes

On dirait que vous pouvez obtenir tous les jours de < Code> Calendrier.Mermonthdays4 () et filtrez-les par jour et mois. Ensuite, il suffit d'indexer la seconde pour durer [- 2] xxx

résultat: xxx


2 commentaires

Toute raison spéciale de l'utilisation de Lambda contre une compréhension de Lambda contre une compréhension [D pour D dans la liste (C.Imonthddays4 (année, mois)) Si D [3] == jour] [- 2] ?


@DavestSomewherwhere Je pense que la compréhension est bonne aussi. Mais je pense que vous devez vérifier le mois ( d [1] == mois ) car calendrier ne donne pas seulement des dates dans le mois donné.