如何让Black兼容Jupytext百分比格式笔记本中的BigQuery魔法命令?
解决Black无法解析BigQuery IPython魔法命令的问题
针对Jupytext转换后的百分比格式Python文件中,Black无法解析%%bigquery魔法命令的问题,提供以下几种可行方案:
方案1:配置Jupytext保留魔法命令的原始格式
在项目根目录创建.jupytext.toml配置文件,指定bigquery魔法命令对应的单元格为原始格式,避免Black尝试解析:
[formats] py = "percent" [cell_magics] bigquery = "raw"
重新用Jupytext转换笔记本后,%%bigquery相关代码会被标记为Black不会处理的原始内容。
方案2:替换魔法命令为BigQuery Python客户端代码
直接使用Google官方的BigQuery Python客户端替代IPython魔法命令,这样代码完全符合Python语法,Black可以正常格式化:
# %% from google.cloud import bigquery client = bigquery.Client() query = """ SELECT * FROM schema.table_name """ df = client.query(query).to_dataframe()
方案3:让Black跳过包含魔法命令的文件
如果不需要修改转换流程或代码,可以配置Black跳过特定文件:
- 命令行方式:
black . --extend-exclude="filename.py" - 项目配置文件(
pyproject.toml)方式:[tool.black] extend-exclude = ''' filename.py '''
内容的提问来源于stack exchange,提问作者Anil Sharma
相关产品推荐
相关产品推荐

