Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

VSCode上で、Python3.7の時、pylintで1行目に出たエラーと解決法

More than 1 year has passed since last update.

VSCode上で、Python3.7の時、pylintで1行目に出たエラー

Python3.7にして、VSCodeで、コード書いていたら、
なにも間違ったこと書いていないのに、1行目にエラーが!
絶対間違ったこと書いてないのに、、、
だって

import sys
import os

しか書いてないし。

出てきたエラー

[pylint] F0002:<class 'RuntimeError'>: generator raised StopIteration (1,1)

え?Iteratorなんて回してないし。。。

調査

とりあえず、VSCodeの設定が悪いのかどうかを切り離したかったので、
コンソール開いて、pylintしてみた。

Traceback (most recent call last):
  File "/Users/takashi/Dev/env/lib/python3.7/site-packages/astroid/decorators.py", line 89, in wrapped
    res = next(generator)
StopIteration

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/takashi/Dev/env/lib/python3.7/site-packages/astroid/decorators.py", line 104, in wrapped
    raise StopIteration
StopIteration

The above exception was the direct cause of the following exception:

~ 省略 ~

お?こっちでも失敗。
問題は、python3.7のastroid/decorators.pyで発生してるっぽい。

解決法

コンソールからのpylintのエラー解消

調べてみたら、これが。
おぉまさしくこれっぽいということで、書いてある通り、
pip install pylint astroid --pre -U
したら、コンソールからのpylintではエラーが解消された。

VSCode上でのpylintのエラー解消

ただしまだ、VSCode上では、同じエラーが出ていた。
そこでよくよく考えたら、
virtualenv使ってenv環境でやってるのに、VSCodeでのPythonの設定ってそのままでいいのか?
と思い確認。
"python.linting.pylintPath"という項目の設定を、
"pylint"から"env/bin/pylint"に変更してみたら、
エラーが解消された。

taashi
主に自分用メモ的なのを投稿します。マンション買って結婚して猫も飼ってまぁまぁ幸せなエセAIエンジニア
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away