这是我的代码:
import datetime
today = datetime.date.today()
print(today)
这张照片是:2008-11-22,这正是我想要的。
但是,我有一个列表,我要将其附加到列表中,然后突然一切都变得“不稳定”。代码如下:
import datetime
mylist = []
today = datetime.date.today()
mylist.append(today)
print(mylist)
这将打印以下内容:
[datetime.date(2008, 11, 22)]
我怎样才能得到像2008-11-22这样的简单约会?
我的答案是一个简短的免责声明——我只学了大约2周的Python,所以我绝不是专家;因此,我的解释可能不是最好的,我可能使用了不正确的术语。不管怎样,这就是答案。
我在代码中注意到,当您声明变量today=datetime.date.today()时,您选择使用内置函数的名称来命名变量。
当您的下一行代码mylist.append(today)附加列表时,它附加了整个字符串datetime.date.today(),您之前将其设置为today变量的值,而不仅仅是附加today()。
一个简单的解决方案是更改变量的名称,尽管大多数程序员在使用datetime模块时可能不会使用它。
以下是我尝试的:
import datetime
mylist = []
present = datetime.date.today()
mylist.append(present)
print present
并打印yyyy-mm-dd。
在Python中,可以使用datetime模块中的date、time和datetime类中的strftime()方法格式化datetime。
在您的特定情况下,您使用的是datetime中的date类。您可以使用以下代码段将today变量格式化为格式为yyyy-MM-dd的字符串:
import datetime
today = datetime.date.today()
print("formatted datetime: %s" % today.strftime("%Y-%m-%d"))
在以下更完整的示例中:
import datetime
today = datetime.date.today()
# datetime in d/m/Y H:M:S format
date_time = today.strftime("%d/%m/%Y, %H:%M:%S")
print("datetime: %s" % date_time)
# datetime in Y-m-d H:M:S format
date_time = today.strftime("%Y-%m-%d, %H:%M:%S")
print("datetime: %s" % date_time)
# format date
date = today.strftime("%d/%m/%Y")
print("date: %s" % time)
# format time
time = today.strftime("%H:%M:%S")
print("time: %s" % time)
# day
day = today.strftime("%d")
print("day: %s" % day)
# month
month = today.strftime("%m")
print("month: %s" % month)
# year
year = today.strftime("%Y")
print("year: %s" % year)
更多指令:
来源:
在Python中设置DateTime格式斯特夫蒂姆
我的答案是一个简短的免责声明——我只学了大约2周的Python,所以我绝不是专家;因此,我的解释可能不是最好的,我可能使用了不正确的术语。不管怎样,这就是答案。
我在代码中注意到,当您声明变量today=datetime.date.today()时,您选择使用内置函数的名称来命名变量。
当您的下一行代码mylist.append(today)附加列表时,它附加了整个字符串datetime.date.today(),您之前将其设置为today变量的值,而不仅仅是附加today()。
一个简单的解决方案是更改变量的名称,尽管大多数程序员在使用datetime模块时可能不会使用它。
以下是我尝试的:
import datetime
mylist = []
present = datetime.date.today()
mylist.append(present)
print present
并打印yyyy-mm-dd。