Je pensais que ce serait nécessaire lors de la manipulation de la sortie de la date csv en grattant à l'avenir.
-Vous pouvez spécifier la date dans le nom csv à créer en utilisant l'heure actuelle dans l'application. -Opération de csv écrit dans le fichier csv ・ Le type de date est changé en type de chaîne et vice versa
test.py
from datetime import datetime
now = datetime.now()
print(now)
-----result-----
2020-10-26 20:39:01.825495
test.py
from datetime import datetime
# 2018/11/11 peut être fait de la même manière
str_date = '11 novembre 2018'
#strptime transforme une chaîne en date
#strftime transforme la date en une chaîne
one_date = datetime.strptime(str_date, '%Y année%m mois%jour j')
print(one_date)
-----result-----
2018-11-11 00:00:00
from datetime import datetime
from datetime import timedelta
str_date = '2018/11/11'
base_date = datetime.strptime(str_date, '%Y/%m/%d')
print(base_date)
-----result-----
2018-11-11 00:00:00
----------------
#il y a 10 jours
before_10days = base_date - timedelta(days=10)
#10 jours plus tard
before_10days = base_date - timedelta(days=10)
print(before_10days)
-----result-----
2018-11-01 00:00:00
day.csv
2016-10-01
2016-10-02
2016-10-03
2016-10-04
2016-10-05
2016-10-06
2016-10-07
2016-10-08
2016-10-09
2016-10-10
2016-10-11
2016-10-12
2016-10-13
2016-10-14
day.py
from datetime import datetime
#lire csv
with open('day.csv', encoding='utf-8') as f:
for row in f:
day = datetime.strptime(row.rstrip(), '%Y-%m-%d')
print(f'{day:%Y/%m/%d}')
-----result-----
2016/10/02
2016/10/03
2016/10/04
2016/10/05
2016/10/06
2016/10/07
2016/10/08
2016/10/09
2016/10/10
2016/10/11
2016/10/12
2016/10/13
2016/10/14
Quoi de neuf dans Python 3.8 f '{Expression =}' L'expression elle-même peut maintenant être sortie. Lors de la sortie du format f '{expression =: format}'
test.py
from datetime import datetime
from datetime import timedelta
main_date ='2016-10-12'
#Chaîne de caractères → à ce jour
base_day = datetime.strptime(main_date,'%Y-%m-%d')
#Date il y a une semaine
before_7days = base_day - timedelta(days=7)
#Sélectionnez le fichier csv
with open('day.csv', encoding='utf-8') as f:
for row in f:
#Chaîne de caractères → date Effacer le saut de ligne en fin de ligne
day = datetime.strptime(row.rstrip(), '%Y-%m-%d')
#print(day)
#2016-10-02 00:00:00
#2016-10-03 00:00:00
#~
#2016-10-14 00:00:00
#2016-10-Afficher les articles applicables pendant 12 à 7 jours
if before_7days <= day < base_day:
#Y/m/Au format d
print(f'{day:%Y/%m/%d}')
-----reult-----
2016/10/05
2016/10/06
2016/10/07
2016/10/08
2016/10/09
2016/10/10
2016/10/11
Recommended Posts