Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Transcribing DNA into mRNA: Mutating Strings, Reading and Writing Files

onouyek
November 12, 2021

Transcribing DNA into mRNA: Mutating Strings, Reading and Writing Files

onouyek

November 12, 2021
Tweet

More Decks by onouyek

Other Decks in Programming

Transcript

  1. 環境構築 - 必要パッケージ群のインストール # 公開されているレポジトリからファイル群を取得 $ git clone https://github.com/kyclark/biofx_python $

    cd biofx_python # requirements.txt に記載のパッケージをインストール $ pip3 install -r requirements.txt # pylintの設定ファイルをホームディレクトリに移動 $ cp pylintrc ~/.pylintrc # mypyの設定ファイルをホームディレクトリに移動 $ cp mypy.ini ~/.mypy.ini
  2. argparseとは 実行時にコマンドライン引数を取れるようにするPythonの標準ライブラリ $ ./rna.py -h usage: rna.py [-h] [-o DIR]

    FILE [FILE ...] Transcribe DNA into RNA positional arguments: FILE Input DNA file optional arguments: -h, --help show this help message and exit -o DIR, --out_dir DIR Output directory (default: out) rna.pyでは、 位置引数として FILE オプション引数として --help と--out_dirが定義されている デフォルトの名前はout
  3. 出力ファイルの作成 os.pathモジュールのdirname()でディレクトリのパスを、 basename()でファイル名をファイルパスから取得できる。 >>> import os >>> os.path.dirname('./tests/inputs/input1.txt') './tests/inputs' >>>

    os.path.basename('./tests/inputs/input1.txt') 'input1.txt' os.path.join()で出力ファイルのパスを作成する os.path.basename('tests/inputs/input1.txt') ↓ os.path.join("rna", "input1.txt") → "rna/input1.txt" ↑ args.out_dir demo
  4. (参考)pytest fixture 1 2 Yield fixturesでtestに使ったディレクトリを Cleanup ①関数にpytest.fixture デコレーターを つけるとテスト関数の引数として渡せる。

    ②outdirが呼ばれるとyieldまで実行さ れてout_dirを返す。 テストの実行が終わると yieldより後の処 理が行われる。