catch-img

VSCODEの機能強化 ~Python LinterをPylintからFlake8に切り替える~ 【Shopify運用支援】


画像ファイルの表示サイズを一括リサイズするプログラミングを始める前に、今回は、Microsoft Visual Studio Code(以下、VSCODE)の機能強化をしてみたいと思います。


目次[非表示]

  1. 1.Flake8をインストール
  2. 2.VSCODEの設定変更
  3. 3.linterを適宜切り替えるには



以前、VSCODEをインストールした際にPythonの拡張機能を設定しましたが、その拡張機能にはPylintというPythonのコードをチェックしてくれる機能(linterといいます)がデフォルトに指定されています。このPylintをFlake8というlinterに切り替えて使えるようにします。PylintとFlake8の違いは、検索サイトで「pylint flake8 比較」などと検索すると情報が得られると思いますが、ザックリいうと、Flake8の方が軽量で、VSCODEで中小規模のコードを書くのに向いているといったところでしょうか。また、VSCODEはlinterを切り替えてチェックするということもできますので、まず、Flake8を使いながらコードを書き、一段落したらPylintに切り替えて再チェックするといった使い方もできます。



Flake8をインストール

pip show flake8 と pip install flake8

まずはコマンドプロンプトを開き、pip show flake8 で Flake8がインストールされているかどうかを確認しましょう。インストールされていなければ pip install flake8でインストールします。インストールの結果、「Successfully instaled」が表示されればOKです。

筆者のPCはクリーンな状態でないためインストール中に表示されるメッセージは上図のようになっていますが、初回インストールやアップデートの場合は関連パッケージのダウンロードやインストールの状況を確認することができます。


VSCODEの設定変更

Ctrl+,(カンマ)で設定タブを開く

Flake8のインストールが完了したらコマンドプロンプトは閉じて構いません。次にVSCODEを起動して Ctrl+,(カンマ)で設定タブを開きます。この設定タブの上段に「設定の検索」という入力ボックスがありますので、ここに「pythonlintingenabled」と入力します。すると検索結果として「Python > Linting:~~ Enabled」(~~部分はさまざまな名称になります)が一覧表示されますので、その中の「Python > Linting: Flake8 Enabled」の下にある「Whether to lint Python files using flake8」をチェックし、「Python > Linting: Pylint Enabled」の下にある「Whether to lint Python files using pylint」のチェックを外します。そして設定タブを閉じてください。もし、「拡張機能 flake8がインストールされていません。」というポップアップが表示された場合は「install」ボタンをクリックしてください。(このポップアップがどういう状況で現れるのかは未調査です。機会があったら調べてみます。)


Flake8がどのように機能するのかを確認してみる

では、Flake8がどのように機能するのか試してみましょう。Ctrl+Nで新しいファイルを開き、Ctrl+Sで適当なファイル名(ファイルの拡張子は .pyにします)を付けて保存してlinterが働くようにしてコードを書いてみます。


適当に、下図のようなコードを書いてみると、2行目の「sys」の下に赤い波線、3行目の先頭に黄色い波線が表示されました。右端のすくろーろばーにも赤と黄のマークがついて問題のある行を示しています。また、このタブのファイル名が赤くなって「2」という数字がついていますが、これはこのファイルに2つの問題があることを示しています。

波線部分にマウスオーバーするとポップアップでどういう問題があるのかを示してくれます。


「sys」の方は、1行の文字数が87文字あり、79文字を超えているといっています。PEP8というPythonのコーディング指針では1行あたりの文字数は最大79文字にすることが推奨されているため、そのルールが守られていないことを示しています。


3行目の先頭の波線のほうは下図のようなポップアップが表示されました。ファイルの最後に余計な空行があると指摘しています。


また、Alt+F8を押すとポップアップ表示ではなくインラインで警告を表示されることができます。Alt+F8を押すたびに次の警告へ移るので、波線が見つけにくいときなどはAlt+F8が便利です。



linterを適宜切り替えるには

Python: Select Linter

次にlinterを切り替えてみましょう。Ctrl+Shift+Pを押しVSCODEのコマンドパレットを開き、「>」と表示されている入力ボックスで「>」に続けて「python select linter」と入力すると「Python: Select Linter」がサジェストされます。


そこで「Python: Select Linter」を選択すると有力ボックスに「current:flake8」と表示され現在のlinterがflake8であることが示されます。また下には「Disable Linting」(linterを無効にする)や選択可能なinterが一覧表示されます。


このlinterの一覧で「pylint」を選ぶとlinterをFlake8からPylintに切り替えることができます。(もしかすると、このときPylintがインストールされていないというポップアップが表示されるかもしれません。その場合は「install」を実行してください。)


Pylint先ほど書いたコードを見てみるとFlake8で出ていた警告が無くなりました。Pylintのほうがデフォルト(オプション無し)ではコーディングスタイルのチェックが緩いのかもしれません。


元々 Pythonは可読性の高いプログラミング言語ですが、コードをきれいに書くということはバグを減らすことにも繋がりますし、半年後、一年後にコードを見返すようなことがあったとき、汚いコードよりきれいなコードのほうが短時間で思い出したり、理解することができますので、ぜひ、linterに怒られないようなきれいなコードが書けるように心がけてください。


今回は以上です。それではまた!


トランスコスモスShopifyエンジニア
トランスコスモスShopifyエンジニア

トランスコスモスは日本で7社しかない最上位の「Shopifyプラスパートナー」です。最上位認定を堅持しECサイト制作・Shopifyアプリ開発を担うのが、トランスコスモスShopifyエンジニアチームです。Shopify構築によって得られた知見などをブログ記事にて発信していきます。

ShopifyのECサイト構築はトランスコスモスにお任せ!

トランスコスモスは、Shopifyのエンタープライズ版「Shopify Plus」の優れた成果を持つ提携企業として認定された、国内に7社しかいない(2021年9月時点)最上位の公式パートナーです。

Shopifyを使ったECサイト制作から、調査分析・戦略立案、WEB広告(SEM)、ECサイト制作、お客様サポート、受発注、フルフィルメントまで業務設計・運用代行いたします。



Shopify(ショッピファイ)ストア構築・制作、運用代行について
問い合わせ

アップロードしています。少々お待ちください。
お気軽に
お問い合わせください

Shopify(ショッピファイ) ECストア構築・運用代行

トランスコスモスは日本に7社しかない最上位の「Shopifyプラスパートナー」企業です

関連記事


【無料】セミナー動画視聴

2021年09月29日オンラインECセミナー動画【無料視聴】

『製薬企業 第3極の販路圏 DXプリホールセラー企業はなぜ誕生した?』第2弾は「MRのノンコア業務アウトソース」をテーマにロート製薬株式会社再生医療事業開発部 部長 兼 メディカル事業開発部 部長西巻賢一様をお迎えし、鼎談スタイルで語り合っていただきます。

2021年09月28日オンラインECセミナー動画【無料視聴】

デジタルシフトが求められる今、D2Cへの関心が高まり、ダイレクトにお客様とつながる D2C ビジネスは注目を集めています。本セミナーでは、顧客視点で取り組むD2CとEC事業を成功させるために不可欠なプラットフォーム『Shopify』の歴史・メリットなど基本のすべてをお伝えさせていただきます。

2021年7月13日オンラインECセミナー動画【無料視聴】

デジタルシフトが求められる今、D2Cへの関心が高まり、ダイレクトにお客様とつながる D2C ビジネスは注目を集めています。本セミナーでは、顧客視点で取り組むD2CとEC事業を成功させるために不可欠なプラットフォーム『Shopify』の歴史・メリットなど基本のすべてをお伝えさせていただきます。


EC関連サービス



採用情報(求人)

EC流通に関する新規サービス企画/セールス【正社員】【採用・求人情報】

激変する流通業界の中で、お客様企業の満足度を高めるサービスの実現のために、最適なロジスティクスシステムをデザインしていただく、裁量権が大きいポジションでのお仕事です。システム設計・構築・導入プロジェクトマネジメントを通して、お客様企業の事業拡大の支援をしていただきます。

ECロジスティクス運用システムマネージャー【正社員】【採用・求人情報】

激変する流通業界の中で、お客様企業の満足度を高めるサービスの実現のために、最適なロジスティクスシステムをデザインしていただく、裁量権が大きいポジションでのお仕事です。システム設計・構築・導入プロジェクトマネジメントを通して、お客様企業の事業拡大の支援をしていただきます。

EC物流センターのバックオフィス業務マネージャー【正社員】【採用・求人情報】

トランスコスモスの求人情報です。バックオフィス業務は、関連部署との調整やお客様企業の対応に至るまで、その業務プロセスの中核をなす重要なポジションとなりますが、今後ますます需要が伸びるECサービスにおいて、新規サービス導入に向けた体制・運用構築など、事業拡大に携わることで自身のキャリアアップを目指すことも可能です。


トランスコスモスの定量的な強み

お気軽に
お問い合わせください

Shopify(ショッピファイ) ECストア構築・運用代行

トランスコスモスは日本に7社しかない最上位の「Shopifyプラスパートナー」企業です

Shopify人気記事ランキング

 Tag(タグ)

 記事検索

 カテゴリー

 【無料】募集中セミナー

全3件中 1〜 3件を表示

 【無料】資料ダウンロード

Shopify操作マニュアルのダウンロード一覧

ショッピファイの管理画面の使い方を図解で開設した操作マニュアル資料をPDFにてダウンロード頂けます。

フルフィルメント(ロジスティクス)サービス資料無料ダウンロード一覧

フルフィルメント(ロジステックス)サービス資料無料ダウンロード一覧になります。

ECサービス紹介資料無料ダウンロード一覧

トランスコスモスのEC関連のサービス資料の一覧ページです。PDFにて概要のわかる資料を「無料」でダウンロードして頂けます。

セミナー発表資料の無料ダウンロード一覧

トランスコスモスのEC関連のWEBセミナーで使用した資料一覧ページです。PDFにてセミナーの内容がわかる資料を「無料」でダウンロードして頂けます。

全4件中 1〜 4件を表示

Shopify認定パートナー企業

トランスコスモスは日本に7社しかない最上位の「Shopifyプラスパートナー」です。
Shopifyでのサイト制作ならお任せください