如何在python3上打印当前日期?

2024-10-05 02:07:14 发布

您现在位置:Python中文网/ 问答频道 /正文

根据我收集的信息,here(例如),这应该以两位数打印当前年份

print (datetime.strftime("%y"))

但是,我得到了这个错误

TypeError: descriptor 'strftime' requires a 'datetime.date' object but received a 'str'

所以我试着

print (datetime.strftime(datetime.date()))

得到

TypeError: descriptor 'date' of 'datetime.datetime' object needs an argument

所以我把"%y"放在上面的date()里面

TypeError: descriptor 'date' requires a 'datetime.datetime' object but received a 'str'

在我看来,这真的很可疑。

我错过了什么?


Tags: 信息datetimedatehereobjectbutprint年份
3条回答

以下方法似乎有效:

import datetime
print (datetime.datetime.now().strftime("%y"))

它想要的datetime.data对象在点的“左边”而不是右边。您需要datetime的一个实例来调用该方法,现在可以完成()

import datetime
now = datetime.datetime.now()

print(now.year)

上面的代码对我来说非常好。

这段代码将允许你以任何你能想到的格式获取日期和时间:(查看这篇文章的底部了解更多信息)

# Get The Current Date Or Time
def getdatetime(timedateformat='complete'):
    from datetime import datetime
    timedateformat = timedateformat.lower()
    if timedateformat == 'day':
        return ((str(datetime.now())).split(' ')[0]).split('-')[2]
    elif timedateformat == 'month':
        return ((str(datetime.now())).split(' ')[0]).split('-')[1]
    elif timedateformat == 'year':
        return ((str(datetime.now())).split(' ')[0]).split('-')[0]
    elif timedateformat == 'hour':
        return (((str(datetime.now())).split(' ')[1]).split('.')[0]).split(':')[0]
    elif timedateformat == 'minute':
        return (((str(datetime.now())).split(' ')[1]).split('.')[0]).split(':')[1]
    elif timedateformat == 'second':
        return (((str(datetime.now())).split(' ')[1]).split('.')[0]).split(':')[2]
    elif timedateformat == 'millisecond':
        return (str(datetime.now())).split('.')[1]
    elif timedateformat == 'yearmonthday':
        return (str(datetime.now())).split(' ')[0]
    elif timedateformat == 'daymonthyear':
        return ((str(datetime.now())).split(' ')[0]).split('-')[2] + '-' + ((str(datetime.now())).split(' ')[0]).split('-')[1] + '-' + ((str(datetime.now())).split(' ')[0]).split('-')[0]
    elif timedateformat == 'hourminutesecond':
        return ((str(datetime.now())).split(' ')[1]).split('.')[0]
    elif timedateformat == 'secondminutehour':
        return (((str(datetime.now())).split(' ')[1]).split('.')[0]).split(':')[2] + ':' + (((str(datetime.now())).split(' ')[1]).split('.')[0]).split(':')[1] + ':' + (((str(datetime.now())).split(' ')[1]).split('.')[0]).split(':')[0]
    elif timedateformat == 'complete':
        return str(datetime.now())
    elif timedateformat == 'datetime':
        return (str(datetime.now())).split('.')[0]
    elif timedateformat == 'timedate':
        return ((str(datetime.now())).split('.')[0]).split(' ')[1] + ' ' + ((str(datetime.now())).split('.')[0]).split(' ')[0]

要获取时间或日期,只需键入getdatetime('TYPE'),并将TYPE替换为以下任何(记住:键入时,请确保用语音标记(“)或撇号(')将其包围起来)

All Example Outputs Based Around The Same Time And Date:

Date: 25-11-2017 | Time: 03:23:56.477017

Table Of Arguments With Meanings And Example Outputs

相关问题 更多 >

    热门问题