Python3 で AtCoder のコンテストに挑むための環境です。Visual Studio Code(VSCode) と Pipenv の使用を前提とします。
このプロジェクトをクローンして、VSCode のワークスペースとして開きます。
wip
ディレクトリ内にfoo.py
とtest_foo.py
を置くと unittest の対象となります。
コードテンプレートおよびテストケースの自動生成スクリプトを利用できます。
atcoder.py [-h] code alpha [url]
python3 atcoder.py abc145 a
を実行すると、wip
ディレクトリにabc145_a.py
とtest_abc145_a.py
が生成されます。
test_abc145_a.py
には AtCoder の問題ページから入力例と出力例を取得したテストケースが生成されます。
問題ページの URL がhttps://atcoder.jp/contests/code/tasks/code_alpha
で表されない場合、第 3 引数に問題ページの URL を加えると、指定された URL からテストケースが生成されます。
開催中のコンテストのテストケースを生成するには AtCoder へのログインが必要です。
atcoder.ini
を作成し、以下の形式で認証情報を置いてください。
[login]
username = YOUR_USER_NAME
password = YOUR_PASSWORD
logout = True
[workspace]
wipdir = wip
logout
がTrue
のときは、スクリプトの終了時にログアウトします。
コードをwip
ディレクトリ以外に生成したい場合は、wipdir
に指定してください。
_.py
とtest_.py
は、それぞれ提出コードとテストコードのひな形です。
コードはimport _ as task
以外は任意に書き換え可能です。
問題ページから取得したテストケースはtest_.py
内にある# SAMPLES
と置き換えられます。
以下を予めインストールしておきます。
- Python3.8.2
- Poetry
Pipenv(保守されていません)- Visual Studio Code
環境変数 PIPENV_VENV_IN_PROJECT
に true
を設定してください。
プロジェクトのルートフォルダで以下を実行します。
poetry install
VSCode のワークスペースとして開くと、自動的に構成されます。
This project is licensed under the MIT License - see the LICENSE file for details