プログラミング

macによるpython3入門-その6-〜関数〜

プログラミングに関する原則の中で、DRY原則というのがあります。 DRYはDon’t Repeat Your Selfの略で、コードの重複はできる限り避けるべきです。

DRY原則に従う理由は、そもそも、書いたことがあるコードを再度記載するのは無駄な作業ですし、なによりコードが重複していると、コードが不必要に長くなり、プログラムの メンテナンス性・可読性が低くなるからです。

ですが、はじめからコードの再利用を念頭においてプログラミングをはじめてしまうと ロジックの抽象化が必要になりますので、普通にコードを書いているよりも時間がかかります。 一度しか使用しないロジックであれば、時間をかけてロジックを抽象化し、再利用を考えるのは基本的に無駄があります。

そこで、コードの再利用を考える基準として、マーチンファウラーが「リファクタリング -プログラムの体質改善テクニック-」で提唱している「Rule of three(3度目の法則)」に従うのが良いと思います。 重複した処理が3回出てきたら、コードの再利用を検討するのが良いでしょう。

コードを再利用するときの方法として、「関数」があります。 今回はPythonにおける「関数」について書きたいと思います。

続きを読む

Macにnode.jsの環境構築をしてみる(nodebrew)

Macにnode.jsをインストールしてきます。

node.jsのインストールは比較的簡単で公式サイトからインストーラーをダウンロードし、実行するだけです。

公式サイトからは「最新安定版」と「LTS (長期サポート版) 」の2種類選択することができます。最新安定版なら右側をクリックします。

Node js

ただ、node.jsはバージョンアップの頻度が高く、プロジェクトによってはバージョンを切り替えたくなるときがあります。

そこで、今回は公式サイトのインストーラーからではなく、node.jsのバージョン管理ツールである「nodebrew」を使用して、Macにnode.jsの環境を構築していきたいと思います。

動作確認環境

  • OS:OS X Yosemite 10.10.5

続きを読む

【Mac】Python3(Anaconda)でTensorFlow環境を構築してみる

Python3でTensorFlow環境を構築してみましょう。

機械学習・ディープラーニングをしっかり理解することは難しいと思いますが、環境構築だけなら簡単です。

そもそも、環境構築しなければ、いろいろ試して勉強することもできないので、機械学習やディープラーニングの概念については、また考えるとして、とりあえず環境構築してみましょう。

TensorFlow環境の構築はいろいろ方法がありますが、今回は前回解説したAnacondaを使って環境構築してみたいと思います。

動作確認環境

  • OS:OS X Yosemite 10.10.5
  • pyenv 20150310
  • anaconda3-2.5.0

続きを読む

Python3における内包表記について

Python初心者にとってわかりづらい記法として「内包表記」があります。 for文などを使っても同じ処理を書くことはできますが、内包表記を使用すれば、よりPythonらしいコードを書くことができます。

内包表記は、ひとつ以上のイテレータからPythonデータ構造をコンパクトに作れる形式だ。内包表記を使えば、ループや条件テストを寡黙な構文で結合できる。内包表記が使えるかどうかは、Python初心者レベルを卒業できているかどうかの目印になる。 引用:入門Python3 Bill Lubanovic 著

一見、わかりづらそうですが、慣れると読みやすく、内包表記があるからこそPythonを使用しているプログラマもいるほどです。

Python初心者から卒業するためにも内包表記を理解しましょう。

動作確認環境

  • OS X Yosemite 10.10.5
  • Python 3.5.1

続きを読む

MacによるPython3入門 その5 〜if文 while文 for文〜

はじめに

これまでPythonのデータ構造について説明してきました。

今回からは他のプログラミング言語でお馴染みのif文・while文・for文の説明をしたいと思います。

これらの制御フローツールを使えるようになれば、データ処理するためのプログラムが記載できるようになります。

さっそく説明していきたいと思います。

続きを読む