【问题标题】:How to pass datetime object as an argument into class?如何将日期时间对象作为参数传递给类?
【发布时间】:2019-04-29 15:10:33
【问题描述】:

我是 Python 类的新手。我想将一个日期时间对象作为birth_date 传递给Person 类。

这就是我现在拥有的:

import datetime

class Person:

    def __init__(self, first_name, last_name, birth_date):
        self.first_name = first_name
        self.last_name = last_name


    def fullname(self):
        return self.first + ' ' + self.last_name

【问题讨论】:

  • 什么意思?您希望您的 birth_date 已经成为 datetime object 还是希望它成为 string 并将其转换为 datetime

标签: python oop datetime types


【解决方案1】:

你可以使用datetime.strptime():

from datetime import datetime

class Person:

    def __init__(self, first_name, last_name, birth_date):
        self.first_name = first_name
        self.last_name = last_name
        self.birth_date = datetime.strptime(birth_date, '%b %d %Y')

    def fullname(self):
        return self.first + ' ' + self.last_name

person = Person('John', 'Doe', 'Jun 1 2005')

print(person.birth_date)

返回:

2005-06-01 00:00:00

您假设了一种特定的日期格式,您可以根据需要对其进行修改。参考文档here

【讨论】:

  • 非常感谢!赞赏。
猜你喜欢
  • 1970-01-01
  • 2012-03-30
  • 2018-07-29
  • 1970-01-01
  • 2019-07-23
  • 1970-01-01
  • 1970-01-01
  • 2012-09-16
  • 2022-11-02
相关资源
最近更新 更多