web-dev-qa-db-ja.com

TypeError:strptimeを使用する場合、datetime.datetimeではなく文字列でなければなりません

一連の数値を有効な日付に変換する関数をPython 2.7で記述しようとしています。これまでのところ、変換とは別に機能します。

関連するコードは次のとおりです。

import datetime

def convert_date(x,y,z):
    orig_date = datetime.datetime(x,y,z)
    d = datetime.datetime.strptime(str(orig_date), '%Y-%m-%d %H:%M:%S')
    result = d.strftime('%m-%d-%Y')
    return orig_date

a = convert_date(13,11,12)
print a

私がこれを実行するときはいつでも、私は得ます:

> Traceback (most recent call last):
>       File "test.py", line 9, in <module>
>         a = convert_date(13,11,12)
>       File "test.py", line 5, in convert_date
>         d = datetime.datetime.strptime(orig_date, '%Y-%m-%d %H:%M:%S')

> TypeError: must be string, not datetime.datetime

これは、strptimedatetime object、しかしこれをどのように機能させるのですか?

12
Fake Name

例外が発生しています。 exceptブロックでは、単にpassを実行しています。代わりに、printを実行するか、例外をログに記録すると、何が問題なのかがわかります。

例外が発生するため、resultオブジェクトは作成されず、エラーが発生します。

0