我想输出字符串'2019-12-03'
======
filename="20191203_volum.csv"
yyyy=filename[:4];print(yyyy)
mm=filename[5:6];print(mm)
dd=filename[7:8];print(dd)
yyyymmdd=yyyy+'-'+mm+'-'+dd
print(yyyymmdd)
#I want to output the string '2019-12-03'
# '2019-12-03'
#The result of the program which does not go as expected is the following.
# '2019-2-3'
======
我分别拿出Yyyy,MM,DD。并加入。
但是,结果与预期不同。
- mm = 12但2
- dd = 03,但变为3。
我应该如何编写程序?我希望你告诉我。
假设您的文件名中的日期是始终在 _
之前,您可以:
- 将日期提取为字符串,
- 解析字符串以获取
datetime
对象, - 然后按照您想要的方式格式化。
它将如下:
from datetime import datetime
filename = '20191203_volum.csv'
parts = filename.split('_')
str_date = parts[0]
my_date = datetime.strptime(str_date, "%Y%m%d")
formatted_date = my_date.strftime('%Y-%m-%d')
print(formatted_date)
# '2019-12-03'