我搜索 Quarto .qmd
和 R Markdown (.Rmd
) 文件的 Python linters/formatters。是否有任何工具开箱即用可以:
a) 对 Quarto .qmd
或 R Markdown (.Rmd
) 文件的 Python 代码单元中的 Python 代码进行 lint 和/或格式化(类似于 R 的 styler
) 仅适用于 Python)?
b) 或应用其他代码格式化程序或 linter,例如 black
到 .qmd
/.Rmd
文件中的 Python 代码单元(即像 nbQA
这样的工具,它将 black
或其他工具应用于 Python Jupyter 笔记本中的单元格,仅用于 qmd
/Rmd
文件)?
- 我尝试在 Google 搜索上搜索此类工具(使用关键字
python
、format
、lint
、Quarto
、qmd
和类似的),但没有出现任何感兴趣的内容。 - 我在 Posit Community 上提出了问题但还没有对现有工具的建议。 Quarto 团队还没有这样的工具。
我更喜欢命令行工具,但欢迎提供所有建议。
.qmd
文件的示例,我想在其中格式化 Python 代码:
---
title: "Python code needs formatting"
format: html
---
Load packages/modules.
```{r}
library(reticulate)
```
```{python}
import pandas as pd
```
Load data.
```{r}
data(women)
```
Analyze data.
```{python}
women = r.women
women.head()
```
```{python}
women2 = (
women
.assign(
bmi = lambda x: x.weight / \
x.height**2
)
)
women2 .sum()
```
最佳答案
我做了一个小quato过滤器black-formatter
使用它可以将 python 代码格式化为 python 代码块。此扩展需要事先安装 black
,您可以使用 pip install black
来安装。
---
title: "Python code needs formatting"
format: html
filters:
- black-formatter
---
Load packages/modules.
```{r}
library(reticulate)
```
```{python}
import pandas as pd
```
Load data.
```{r}
data(women)
```
Analyze data.
```{python}
women = r.women
women.head()
```
```{python}
women2 = (
women
.assign(
bmi = lambda x: x.weight / \
x.height**2
)
)
women2 .sum()
```
关于python - 用于在 Quarto (`.qmd` )/R Markdown (`Rmd` ) 文件中检查和格式化 Python 代码的工具,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75664661/