You need to enable JavaScript to run this app. Python含format()点链式调用的代码如何符合PEP8编码规范
优惠活动
大模型
产品
解决方案
定价
更多

Python含format()点链式调用的代码如何符合PEP8编码规范

PEP8格式化规范解答

1. 行尾加.的写法合规性

你当前的写法完全符合PEP8标准,属于合法的长行折行方案。PEP8后续更新的版本更推荐将链式调用的.放在新行的开头,更符合阅读直觉:无需回溯上一行末尾即可判断当前行的操作类型。

2. 推荐的PEP8格式化写法

同时修正了原代码中比较运算符两侧无空格的不符合规范问题,优化后代码如下:

hist_df = spark.read.format("delta").table("{table}".format(table=selected_table))

hist_query = (
    hist_df
    .where(col("status") == "{sel_status}".format(sel_status=selected_status))
    .where(col("cret_dt") < "{last_date}".format(last_date=selected_last_date))
    .drop("cret_ts", "cret_dt")
)

file_path = (
    "abfss://{cont}@{acct}.dfs.core.windows.net/{folder}/"
    .format(
        cont=storage_container,
        acct=storage_account,
        folder=selected_folder
    )
)

3. 写法说明

  • 用括号包裹整个长表达式,不需要加反斜杠续行,是PEP8优先推荐的长行折行方案
  • 链式调用的.统一放在新行行首,调用逻辑一目了然
  • .format()的参数列表每个参数单独占一行,缩进和左括号对齐,符合PEP8参数换行规范
  • 比较运算符(==、<等)两侧统一加空格,符合PEP8空格规范

内容的提问来源于stack exchange,提问作者ericOnline

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.12 18:21:03