try_reflect

Bu, aynı işlemi gerçekleştiren özel bir sürümüdür reflect , ancak çağırma yöntemi özel durum oluşturursa hata oluşturmak yerine NULL değer döndürür.

Sözdizimi

from pyspark.sql import functions as sf

sf.try_reflect(*cols)

Parametreler

Parametre Türü Description
cols pyspark.sql.Column veya str İlk öğe, sınıf adı için değişmez dizeyi temsil eden bir Sütun, ikinci öğe yöntem adı için değişmez dizeyi temsil eden bir Sütun olmalıdır ve kalan öğe java yöntemine yönelik giriş bağımsız değişkenleridir (Sütunlar veya sütun adları).

Örnekler

Örnek 1: Bir yöntem çağrısını bağımsız değişkenlerle yansıtma

from pyspark.sql import functions as sf
df = spark.createDataFrame([("a5cf6c42-0c85-418f-af6c-3e4e5b1328f2",)], ["a"])
df.select(
    sf.try_reflect(sf.lit("java.util.UUID"), sf.lit("fromString"), "a")
).show(truncate=False)
+------------------------------------------+
|try_reflect(java.util.UUID, fromString, a)|
+------------------------------------------+
|a5cf6c42-0c85-418f-af6c-3e4e5b1328f2      |
+------------------------------------------+

Örnek 2: Yansıma çağrısında null ile sonuçlanırken özel durum

from pyspark.sql import functions as sf
spark.range(1).select(
    sf.try_reflect(sf.lit("scala.Predef"), sf.lit("require"), sf.lit(False))
).show(truncate=False)
+-----------------------------------------+
|try_reflect(scala.Predef, require, false)|
+-----------------------------------------+
|NULL                                     |
+-----------------------------------------+