將Python datetime對象轉換為字符串

在列、datetime對象和字符串中顯示日期和時間值。

寫的亞當Pavlacka

最後發布時間:2022年5月19日

使用Python有多種顯示日期和時間值的方法,但並不是所有的方法都容易閱讀。

例如,當您從DataFrame收集時間戳列並將其保存為Python變量時,該值將存儲為datetime對象。如果您不熟悉datetime對象格式,那麼它不像常見的YYYY-MM-DD HH:MM:SS格式那樣容易閱讀。

如果希望打印日期和時間,或者將其用於時間戳驗證,可以將datetime對象轉換為字符串。這將自動將datetime對象轉換為通用的時間格式。

在本文中,我們將向您展示如何將時間戳顯示為列值,然後將其轉換為datetime對象,最後是字符串值。

將時間戳顯示為列值

要將當前時間戳顯示為列值,應該調用current_timestamp ()

這將提供調用它時的日期和時間。

%python from pyspark.sql.functions import * display(spark.range(1).withColumn("date",current_timestamp()).select("date"))

樣例輸出:

將current_timestamp顯示為列值

為datetime對象分配時間戳

您可以將日期和時間分配給變量,而不是在列中顯示日期和時間。

%python mydate = spark.range(1).withColumn("date",current_timestamp()).select("date").collect()[0][0]

完成此賦值後,您可以調用該變量以將存儲的日期和時間值顯示為datetime對象。

% python替換

樣例輸出:

datetime。日期時間(2021,6,25,11,0,56,813000)
刪除

信息

日期和時間在被作為datetime對象分配給變量時是當前的,但是datetime對象的值是靜態的,除非分配了新值。

轉換為字符串

可以通過調用將datetime對象轉換為字符串str ()在變量中。調用str ()隻是將datetime對象轉換為字符串。它不會用當前日期和時間更新值。

% python str(替換)

樣例輸出:

“2021-06-25 11:00:56.813000”