0

我在上一年级的编程课。我的教授给了我们一个作业,他希望我们参加这门其他编程课,这不是这门课的先决条件。我从来没有接受过它,所以我什至不知道如何远程解决这个问题,我已经查过了,找不到任何关于它的信息。

所以是的,我需要编写一个程序,该程序应该以以下格式打印其执行的日期和时间

印刷于 M、Y 的 Dss 日,时间为 HH:MM。

其中:D 是一天的一位或两位数字,不带前导零,ss 是 st、nd、rd、th 中的一个,以适合 D 的为准,M 是月份的英文名称,Y 是年份的四位数字,和 HH 和 MM 分别是小时和分钟的两位数字,用前导零打印

并打印以下示例输出:

于 2012 年 7 月 26 日 12:37 打印。

他说你可以访问 Python 中的 datetime 模块来编写程序。我不知道那是什么意思。

如果有人能在这里引导我朝着正确的方向前进,我将不胜感激。谢谢。

- -编辑 - -

所以我完成了这个程序。谁能告诉它是否正确,因为我不知道程序将被评分的时间或日期,我不确定 th、rd、st 或 nd 条件或没有前导零的日子条件会起作用。谢谢。

import time
import datetime
def ss(D):
    D_list = list(D)
    if(D_list[1]==1):
        return "st"
    elif(D_list[1]==2):
        return "nd"
    elif(D_list[1]==3):
        return "rd"
    else:
        return "th"
def main():
    Y = datetime.date.today().strftime("%Y")
    M = datetime.date.today().strftime("%B")
    D = datetime.date.today().strftime("%d")
    HH = datetime.datetime.now().strftime("%I")
    MM = datetime.datetime.now().strftime("%M")  
    print("Printed on the",D.lstrip('0')+ss(D),"day of",M+",",Y,"at",HH+":"+MM+".")
main()

然后我得到的输出是:

打印于 2013 年 9 月 20 日 12:39。

4

1 回答 1

1

你会想看看这个datetime模块。它应该有你需要的一切。例如:

>>> import datetime
>>> mydate = datetime.datetime.now()
>>> print mydate.strftime('Today is %d %B')
Today is 20 September

可以在此处找到时间的字符串格式列表(例如 the'%d'和 the ) 。'%B'

于 2013-09-20T04:00:11.513 回答