복붙노트

[PYTHON] AttributeError : 'datetime'모듈에 'strptime'속성이 없습니다.

PYTHON

AttributeError : 'datetime'모듈에 'strptime'속성이 없습니다.

다음은 My Transaction 클래스입니다.

class Transaction(object):
    def __init__(self, company, num, price, date, is_buy):
        self.company = company
        self.num = num
        self.price = price
        self.date = datetime.strptime(date, "%Y-%m-%d")
        self.is_buy = is_buy

그리고 date 함수를 실행하려고 할 때 :

tr = Transaction('AAPL', 600, '2013-10-25')
print tr.date

다음과 같은 오류가 발생합니다.

   self.date = datetime.strptime(self.d, "%Y-%m-%d")
 AttributeError: 'module' object has no attribute 'strptime'

어떻게 해결할 수 있습니까?

해결법

  1. ==============================

    1.내가 추측해야만한다면, 당신은 이것을했습니다 :

    내가 추측해야만한다면, 당신은 이것을했습니다 :

    import datetime
    

    귀하의 코드 상단에. 즉, 다음을 수행해야합니다.

    datetime.datetime.strptime(date, "%Y-%m-%d")
    

    strptime 메소드에 액세스한다. 또는 import 문을 다음과 같이 변경할 수 있습니다.

    from datetime import datetime
    

    당신은 그것을 그대로 사용하십시오.

    datetime 모듈을 만든 사람들은 datetime 클래스의 이름을 다음과 같이 지정했습니다.

    #module  class    method
    datetime.datetime.strptime(date, "%Y-%m-%d")
    
  2. ==============================

    2.올바른 호출 사용 : strptime은 datetime.datetime 클래스의 클래스 메서드이며 datetime 모듈의 함수가 아닙니다.

    올바른 호출 사용 : strptime은 datetime.datetime 클래스의 클래스 메서드이며 datetime 모듈의 함수가 아닙니다.

    self.date = datetime.datetime.strptime(self.d, "%Y-%m-%d")
    

    주석에서 Jon Clements가 언급했듯이 일부 사람들은 datetime import datetime을 사용하여 datetime 이름을 datetime 클래스에 바인딩하고 초기 코드 작업을 수행합니다.

    앞으로 어떤 사건이 발생하는지 파악하려면 수입 명세서를보십시오.

  3. from https://stackoverflow.com/questions/19480028/attributeerror-datetime-module-has-no-attribute-strptime by cc-by-sa and MIT license