簡體   English   中英

獲取“列表”object 在 python 中沒有屬性“tolist”

[英]Getting 'list' object has no attribute 'tolist' in python

我正在嘗試運行 pyspark 腳本。 在這個腳本中,我正在執行 sql 查詢並在我嘗試將最后一列 position 更改為第一列之后創建 dataframe 但它給了我錯誤。 你能幫我怎么做嗎?

代碼:

if(masterjobname.endswith('ADDR_Phani')):
            df = sqlContext.sql(query)
            print("Target:  "+targetpath )
            w = (Window().orderBy("SOURCE_COLUMN_VALUE"))
            df = df.withColumn("SYSTEM_ID", dense_rank().over(w))
            cols = df.columns.tolist()
            cols = cols[-1:] + cols[:-1]
            df = df[cols]

好的,我得到了答案。

df.columns.values.tolist()給出列的列表。

解決方案:

if(masterjobname.endswith('ADDR_Phani')):
            df = sqlContext.sql(query)
            print("Target:  "+targetpath )
            w = (Window().orderBy("SOURCE_COLUMN_VALUE"))
            df = df.withColumn("SYSTEM_ID", dense_rank().over(w))
            cols = df.columns.values.tolist()
            cols = cols[-1:] + cols[:-1]
            df = df[cols]

無論您的變量是或不是列表:

list(var)

您可以將其用作異常處理; 即確保它確實是一個列表 object。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM