0

次のコードは期待どおりに機能しています。しかし、2つの質問があります。

# import datetime # does not work
from datetime import datetime
row = ('2002-01-02 00:00:00.3453', 'a')
x = datetime.strptime(row[0], "%Y-%m-%d %H:%M:%S.%f")

1)インポート日時のみが機能しないのはなぜですか?

2)「strptime」メソッドがどのモジュールにログを記録するかをどのように知ることができますか?

>>> help('modules strptime') 

私が探している情報を提供していません。

4

4 に答える 4

2

1)正常に動作します。しかし、そのdatetime中のクラスは別です。あなたはそれをとして参照する必要がありますdatetime.datetime

2)一般インデックスを使用します。ただし、メソッドはモジュールではなくオブジェクトに属します。

于 2012-08-22T08:07:34.473 に答える
2

メソッドはdatetime.datetime.strptimeであり、単純な を実行すると、クラスimport datetimeではなく最上位モジュールのみがインポートされますdatetime

これを次のようにテストできます。

>>> import datetime
>>> locals()
{'__builtins__': <module '__builtin__' (built-in)>, '__name__': '__main__', 'dat
etime': <module 'datetime' (built-in)>, '__doc__': None, '__package__': None}


>>> from datetime import datetime
>>> locals()
{'__builtins__': <module '__builtin__' (built-in)>, '__name__': '__main__', 'dat
etime': <type 'datetime.datetime'>, '__doc__': None, '__package__': None}

名前空間に 2 つの異なるオブジェクトがあることがわかります。

2 番目の質問では、Python の組み込みhelp()は、ロードされたモジュールとオブジェクトに対してのみ機能します。そうでなければ、あなたを助けることimport datetimehelp()できません。したがって、これについてはドキュメントを参照するのが最善です。通常、Google をpython strptime使用すると、正しいドキュメント ページが表示されます。

于 2012-08-22T08:12:16.373 に答える
2
 datetime

モジュールです。また、strptimeという名前のメソッドを持つdatetimeという名前のメンバーもあります。

于 2012-08-22T08:07:01.697 に答える
1

次のいずれかを行います。

import datetime
x = datetime.datetime.strptime(row[0], "%Y-%m-%d %H:%M:%S.%f")

またはあなたがする:

from datetime import datetime
x = datetime.strptime(row[0], "%Y-%m-%d %H:%M:%S.%f")
于 2012-08-22T08:13:54.080 に答える