擅长:python、mysql、java
<p><code>datetime</code>是一个模块,它包含一个类型,也称为<code>datetime</code>。您似乎希望同时使用这两个名称,但您试图使用相同的名称来引用这两个名称。类型和模块是两个不同的东西,在程序中不能同时使用名称<code>datetime</code>引用它们。</p>
<p>如果需要使用除<code>datetime</code>类型之外的模块中的任何内容(显然是这样),则需要使用<code>import datetime</code>导入模块。然后可以将“date”类型称为<code>datetime.date</code>,将datetime类型称为<code>datetime.datetime</code>。</p>
<p>你也可以这样做:</p>
<pre><code>from datetime import datetime, date
today_date = date.today()
date_time = datetime.strp(date_time_string, '%Y-%m-%d %H:%M')
</code></pre>
<p>在这里,您只导入所需的名称(日期时间和日期类型),然后直接导入它们,这样就根本不需要引用模块本身。</p>
<p>最终,您必须决定需要使用模块中的哪些名称,以及如何最好地使用它们。如果只使用模块中的一个或两个类型(例如,仅使用<code>date</code>和<code>datetime</code>类型),则可以直接导入这些名称。如果您使用了很多东西,那么最好导入模块并使用点语法访问其中的东西,以避免用日期特定的名称混淆全局命名空间。</p>
<p>还要注意,如果确实导入模块名称本身,则可以缩短名称以便于键入:</p>
<pre><code>import datetime as dt
today_date = dt.date.today()
date_time = dt.datetime.strp(date_time_string, '%Y-%m-%d %H:%M')
</code></pre>