我想在使用Jupyter Notebook时运行Pylint或任何等效程序.有没有办法这样安装和运行Pylint?

推荐答案

更具体地回答关于pylint的问题.在开发/ci环境(即命令行)中实现这一点的一个相对简单的方法是将笔记本转换为Python,然后运行linting.

假设./notebooks文件夹中有笔记本,路径中有jupyterpylint命令,可以运行以下命令:

jupyter nbconvert \
    --to=script \
    --output-dir=/tmp/converted-notebooks/ \
    ./notebooks/*.ipynb
pylint /tmp/converted-notebooks/*.py

您可能需要配置pylint,因为notebook样式与普通Python模块略有不同.

您可能希望禁用的一些规则:

  • 无意义的陈述
  • 表达式未赋值
  • 尾随新行
  • 错误的进口位置
  • 重新定义外部名称
  • 无效名称

此外,单元格中的最大字符数(在水平滚动之前)似乎是116,但这可能取决于其他因素.

(例如,可以使用--max-line-length--disable pylint参数或通过.pylintrc文件配置这些选项)

Python-3.x相关问答推荐

根据其他数据框架的列顺序从数据框架中进行 Select

将strid()映射到Pandas DataFrame中的字符串不会更改NaN条目,但仍然声称它们不同?

AddMultplicationEquality() 用于多个变量

类变量的Python子类被视为类方法

为什么不能用格式字符串 '-' 绘制点?

asyncio.as_completed() 应该接受 `Iterable`,但如果输入是 `Generator` 就会崩溃?

以不规则频率识别数据框日期时间列上缺失的日期,并用关联值填充它们

python2和python3中的列表生成器

如果网站加载时间过长,如何强制 Selenium 刷新

有没有办法使用重采样矢量化添加缺失的月份?

机器学习实验笔记本的工作区 url

Django 2 个字段之一不能为空

基本 Flask 应用程序未运行(TypeError:模块中缺少必填字段type_ignores)

python - 错误 R10(启动超时)-> Web 进程未能在启动后 60 秒内绑定到 $PORT

当 None 被传递时,如何将默认值应用于 python 数据类字段?

如何使用 Python 订阅 Websocket API 通道?

为什么 Python 不能识别我的 utf-8 编码源文件?

将 Python SIGINT 重置为默认信号处理程序

有效地判断一个元素是否在列表中至少出现 n 次

Django 教程 unicode 不起作用