[英]Put comments in between multi-line statement (with line continuation)
當我編寫以下pyspark命令時:
# comment 1
df = df.withColumn('explosion', explode(col('col1'))).filter(col('explosion')['sub_col1'] == 'some_string') \
# comment 2
.withColumn('sub_col2', from_unixtime(col('explosion')['sub_col2'])) \
# comment 3
.withColumn('sub_col3', from_unixtime(col('explosion')['sub_col3']))
我收到以下錯誤:
.withColumn('sub_col2', from_unixtime(col('explosion')['sub_col2']))
^
IndentationError: unexpected indent
有沒有辦法在pyspark的多行命令行之間寫注釋?
這不是pyspark
問題,而是違反python語法的問題。
考慮以下示例:
a, b, c = range(3)
a +\
# add b
b +\
# add c
c
結果是:
a +# add b
^
SyntaxError: invalid syntax
\\
是連續字符,python將下一行中的任何內容解釋為緊隨其后發生的錯誤,從而引起您的錯誤。
解決此問題的一種方法是改用括號:
(a +
# add b
b +
# add c
c)
分配給變量時,它看起來像
# do a sum of 3 numbers
addition = (a +
# add b
b +
# add c
c)
或您的情況:
# comment 1
df = (df.withColumn('explosion', explode(col('col1')))
.filter(col('explosion')['sub_col1'] == 'some_string')
# comment 2
.withColumn('sub_col2', from_unixtime(col('explosion')['sub_col2']))
# comment 3
.withColumn('sub_col3', from_unixtime(col('explosion')['sub_col3'])))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.