\ 年に1度のブラックフライデーセール! /

Raspberry Piで何かしたいならPythonを習おう!はじめてのPython

Raspberry Pi はいったい何ができるの? Pythonって何? そう思うのも無理はありません。非エンジニアの人なら無関係です。でも、自分も何かしてみたいと思ったら「誰でもコンピューティングに触れられる」ように安価に簡単に提供されている基板のラズパイを使わないのは勿体ないです。

具体的には電子工作ができたり、安価に一般的なパソコンのように使うことも可能です。
また、IoT(モノのインターネット Internet of Thingsの略)の中心に使うことが想定されています。

Raspberry Pi という機械でPythonというプログラム言語を使うだけで、かなりのことができるのです。

ラズパイを買う。そこでPythonを学習する。

決して無駄にはならない知識と技術だと思っています。

この記事の主な流れ

Pythonは比較的に理解し易い

Pythonという世界でも支持されているプログラム言語があります。特徴としてコードがシンプルで比較的に習得しやすいプログラム言語です。昔々のBASIC言語のように初めてのプログラミング言語としてオススメできるのは、理解し易いだけではなく実用的だからです。

そのため、教育用として利用されることも多いです。そこにフォーカスしたRaspberry Pi という基板は、習うという点においてはコストも少なく利用する人の裾野が広がったと思います。

——そもそもRaspberry Pi のPiはPythonをイメージして名付けられました。

Pythonはさまざまな分野のアプリケーションで使われているプログラミング言語です。
Pythonはよく、Tcl、Perl、Scheme、Javaなどと比較されます。

Pythonには次のような特徴があります。

とてもクリーンで読みやすい文法
強力な内省(イントロスペクション)機能
直感的なオブジェクト指向
手続き型のコードによる、自然な表現
パッケージの階層化もサポートした、完全なモジュール化サポート
例外ベースのエラーハンドリング
高レベルな動的データ型
事実上すべてのタスクをこなせる、広範囲に及ぶ標準ライブラリとサードパーティのモジュール
拡張とモジュールはC/C++で書くのが容易(JythonではJava、IronPythonでは.NET言語を利用)
アプリケーションに組み込んでスクリプトインタフェースとして利用することが可能

Python Japan(https://www.python.jp/)から引用

非エンジニアという立場から見ても、他の言語に比べWebのHTML言語や、古くはBASIC言語、ポピュラーなVisualBasic言語、これらと同じように受け入れやすいと感じています。
BASIC、VB、Cを少しかじった経験から、C言語寄りのプログラム言語は文系出身者にとって理解しにくいと思います。

エンジニアの方からしたら笑い話みたいに聞こえるでしょう。例えば簡単なHTMLとCSSにしても、非エンジニアにはCSSの方が理解に苦しみます・・・。

もちろん慣れです。

使っていればHTML+CSSだって理解していきます。とりあえず使える程度には・・・です。

皆さんご存じのサービスもPython

Python言語は比較的に簡単な部類に入るものの、キチンと理解すればかなりの事が可能です。

現実にGoogleのサービスであるDropBoxや人気のInstagramなんてPythonで構築されています。YouTubeだって全てではありませんが一部はPythonです。(大規模になればいくつかの言語が利用されていますね)

おっさんには難しいものの、子供や若い方ならば、もしかしたらGoogleのような世界的企業で働ける1つの言語スキルとして、習得することは優位に働くと思います。

ラズパイとの連携

ハードウェアとしてRaspberry Pi があり、そこにカメラやWi-Fi、様々な機能のHATと呼ばれる拡張基板をOSで制御させます。プログラム言語Ptyhonで記述すれば、それらをより良く制御できます。命令できるわけです。

しかも、ラズパイはPythonがすぐに実行できる環境が公式のRaspberry Pi OSには用意されているのが強みです。少し前だと、Windows環境でPythonを走らせるには少し面倒でした。

他にも多くのプログラム言語はあれど、小学生から使うとなるとそれなりの時間を習得に充てなければなりません。ラズパイなら、学校の授業程度でも物を動かす、光らせる、音を鳴らせる、そういった楽しいことに触れられます。

RaspberryPiなら

  • Raspberry Pi (基板)ですぐに動作可能
  • 公式Raspberry Pi OSで制御が容易
  • ThonnyなどのPythonの統合開発環境(IDE)がプリインストール済み

ここが自分で記述できれば・・・と思いませんか。それが比較的簡単ならばチャレンジしたい・させたいですね!

Pythonを学ぶ

Raspberry Pi と公式OSのRaspberry Pi OSの環境ならば、すぐにPythonのプログラムを作成して実行できます。(~.pyファイル)学習端末として利用し、そのまま自分のやりたいことを作ることができます。

せっかっくの機会なので、様々なHATを利用するために先人が用意してくれたPtyhonスクリプトを読んで理解し、それを少しイジってカスタマイズしたいなと思っています。

無料で閲覧できる学習系のWEBサービスも利用しますが、ここは地道に解説本を購入して確実に学ぶことにしています。

どういった本から入っていこうか?

Pythonには2つの種類があります。2.xと3.x系です。この辺は初心者に分かりづらいです。今なら3.x系から始めてください。書籍は古いと2.X系だったりするので、中古本は気をつけてください。記述法が異なるからです。

解説本は高価なため何冊も買えません。別にプロとしてすぐに仕事をするわけではないので、やりたいことを明確にして「できた」という成功体験でやる気を得たいですね!

私自身は、N88BASIC → Fortran(多分90?) → VisualBasic+VBSは触って来ました。途中、興味本位でBorland C++やDelphi、VC++も手を付けました。仕事としてではなく趣味でしたから、イチからプログラムは書けません。向いていないとも思います。でも、実行できた時は楽しかった!

手始めにこれから

書籍はたくさん出ています。慣れてくると物足りなくなりますが、最初はどれでも同じようなものです。なにせ、何も分からないわけですからね。

1つだけ重要なのは、読みやすい、見やすいといった自分に合う合わないはあると思います。

万人に読みにくいわけではないのに、自分には読みにくいという本は、解説書類だけではなく小説にもありますよね。私はよくあります。

だから、内容は薄くても読みやすい方が理解度は上がります。経験則として、徐々に難しそうな本にトライしていけば、取っつきにくい内容でも読みやすければとなんとかなるものです。

サラッとPythonを知るには良書です!

「確かな力が身につくPython「超」入門」は基本が抑えられています。

私が読んだ限り、図解も丁度良く分かり易い文章です。あくまでも私の相性って奴??

これ1冊で何かを作れるというわけでもないですけど、ネットにあるPythonコードを基礎部分だけ読めるようにはなると思いますよ。

全くの初心者にオススメです。

独学で頑張るには最適の教材! Kindle版ならターミナル端末と並べて便利!

こういった参考書のKindle版は一長一短です。私は本のジャンルというより持ち運びの条件によって書籍とKindle本を使い分けています。中身に依りますがPCでもKindleは読めますので、本を開くよりは軽便な場合もあります。

それにKindle版がある参考書も少ないのは残念です。でも価格差が大きい場合は概ねKindle版を買う傾向にあります。Kindle本でモニターに並べて実践する方が効率がいい。書き込んだりするなら本の方が直感的ですけどね。

Rグリーン

Kindle本の方がリーズナブルなのよ、実際。

同じく初心者向けに書かれていて、更に情報が多いのもあります。

2022年8月発売で、書籍中のコード環境としてPyCharm(community版)を使っています。もちろんラズパイにもインストールできます。データ分析の項目に興味ある人ならオススメ。ソフトの導入なども書かれているので初心者向けでもあります。

\年に1度のブラックフライデーセール!/
Amazonで詳しくみる

業務で使うという目的なら、多くの会社が未だに使っているExcelとPythonを組み合わせた内容をどうでしょう。目的がハッキリしているから、自分の仕事に合うようにカスタマイズしたりする楽しさ(?)も味わえます。

\年に1度のブラックフライデーセール!/
Amazonで詳しくみる

どれも書籍という枠の中なので一長一短はあります。複数冊を購入することになりますけど、目的とできるような内容が多く書かれている解説本を選びましょう。

Kindle本

Kindleの読み放題だと技術書は古い書籍しかないので、単体で購入することがほとんどです。それでもKindleなら紙の本より1〜2割は価格が安いのと、特に技術書はタブレット端末よりモニターに並べて読めるから気に入っています。

Kindleの読み放題は月額980円(税込)です。対象の書籍は追加費用は発生しないから、ラズパイという単語に反応してつい読んじゃいますね。

無料のマガジンはThe MagPi Magazine

写真画像も豊富で新しい情報とノウハウも載っています。オススメ。連載記事にはPythonのプログラミングもあります。

この雑誌は英語ベースです。英語が苦手でも写真を見るだけでも楽しいですよ。無料で公式の雑誌と思えば利用しない手はありません。PDFダウンロード版は無料です。

Python用のエディタがリリース! MacでもWindowsでも

Pythonのエディタで有名なのは2つ。正直な話、ターミナルで実行させるよりもお手軽過ぎです。

最近ではThonnyがお気に入りです。これもマルチプラットフォームです。

ThonnyとMuは基本的な機能を備えた統合開発環境(IDE)です。より高度で機能も豊富なのはPyCharm等があります。

ラズパイではThonnyが最初からプリインストールされているので迷わないですね。

Python公式サイト

当然ながらPythonのサイトも抑えておきましょう。学習用ではなくて事前情報として知っておいて損はありません。

PythonならRaspberry Pi を操れます!

プログラム言語はたくさんあります。どれが素晴らしいとは言えません。現在ではそもそもWebやネットワークの知識も無いとプログラム言語単体ではどうしようもありません。

公開されているAPIなどを利用すれば、やりたいことができる時代です。

中年オヤジの経験上、何か1つでも多少の理解が深まると、他のことも何となく理解出来てくるものです。実践型という無骨なやり方には違いありませんが、習うより慣れろの部分は大きい。

はじめてRaspberry Pi を起動した時、今ほどフレンドリーなインストーラーでは無かったので、何度もエラーが出て困り果てました。何度もインストールを繰り返していたら、原因がなんとなく解ってくるものです。

Pythonなりのコードや設定をコピペして、少し自分の環境に変更させ、ほんの数行をカスタマイズして楽しんでいます。

過程はどうあれ、実際に動いた感動はイイものです。はい。

できればもっとPythonを理解して、自前で作れるようになりたいですね。

Raspberry Piで何かしたいならPythonを習得すれば大概はできるというお話でした。

PythonだけならRaspberryPiは4Bでなくても、3B、3B+、3A+、でも充分勉強できますよ。

シェアする
  • URLをコピーしました!

Raspberry Pi 4、400、Zero2W

販売価格は、必ず販売サイトで確認してください。

\年に1度のブラックフライデーセール!/
Amazonで詳しくみる
\年に1度のブラックフライデーセール!/
Amazonで詳しくみる
RaspberryPi
¥15,987 (2022/11/29 14:24時点 | Amazon調べ)
\年に1度のブラックフライデーセール!/
Amazonで詳しくみる

この記事のコメント(承認後に公開)

コメント一覧 (7件)

  • ご指摘ありがとうございます! tの位置が間違っていました。助かります!
    懲りずにまたお越しください。

  • 初めまして、こちらのサイトを最近発見しましてそこからラズパイゼロを購入したり、過去の記事漁って楽しく見させてもらっています!

    記事とは全く関係ない質問で申し訳ないのですが、今windowsとラズパイゼロを使っていて初めてセットアップした時は、モニターやキーボードが何もない状態でwpa_supplicant.confを自宅のwifiのSSIDとパスワードを入力して作成したあと、microsdに入れてwindowsのコマンドプロンプトからssh pi@raspberrypi.localと入力をして無事接続できました。
    その後vncserverで接続してリモートで画面をwindowsに出力して初期設定をしました。

    そこで一つ問題点がありまして、例えば外にあるセキュリティのかかってないフリーwifiに、まず自分の所持してるwindowsのPCを接続するとして、モニターやキーボードがない状態のラズパイゼロで上記のような感じで繋げる設定方法はないでしょうか?
    読みにくい文章で申し訳ございませんがよろしくお願いいたします。

    • はじめまして! ラズパイダを参考にしていただいてありがとうございます!
      ご質問の件ですけど、パッと思い付くのは、PCではなくて、スマホのBluetoothテザリングにRaspberry Piを接続するのはどうでしょう??
      フリーのWi-Fiだと入力インターフェイスがないと設定が出来ません。テザリングなら1度設定してしまえば、次から見えなくても可能です。

      ご希望は恐らくフリーのWi-Fiを使いたいことだと思いますが、スマホをフリーのWi-Fiに繋げば・・・?? 私はフリーのWi-Fiは使ったことがありませんので詳しくは分かりません。Wi-FiとBluetoothだから大丈夫のように思いますが・・・無理かな。

      ネットのみんなー、元気玉プリーズ!!

      スマホとのテザリングなら記事にしてみようかと思います。期待しないで待ってください。

      • 返信ありがとうございます。
        スマホとのテザリングがあるなんて思いつきませんでした!がしかし設定方法が分からないので今後の記事を待ってます!
        やはりフリーですとネットで検索しても全然出てこないのでイメージだけですけどテザリングが一番よさそうだと思いました。
        今後も記事の更新楽しみにしています!!!

      • 少し試したのですけど、運用が意外と難しくて・・・。
        スマホとRaspberry Pi Zeroでテザリング

        これはどうですか?
        PCをWi-Fiに繋ぎます。(外のフリーWi-Fi?)
        そのPCとRaspberry Pi をUSBケーブルで繋ぎます。ZeroWなら左側のUSBポートです。
        で、以下の記事のようにUSBでOTG接続するのはどうでしょう? これは間違いなく出来ます。
        https://raspida.com/rpi0-usbkit
        /bootにある2つのファイルに追記することで可能です。

        スマホとBluetoothのテザリングも出来きたのですが、インターフェイスが無いと操作ができません。同じネットワーク内に居ないとなりません。
        PCもRaspberry Pi もスマホのテザリングで繋いで同じIP内なら、物によっては可能です。
        (ハードルが高い)Volumioで試したらインターフェイスがバグって操作できませんでしたので検証できませんでした。
        Raspbianなら問題無くSSHで接続できると思うので、実証できたら記事にしてみますね。

        最初のUSBでネット接続をPC/Macを経由するやり方が繋ぐだけですから簡単ですね。

  • 詳細に解説してくださりありがとうございます。
    申し訳ございません、コメントを見落としていました。

    アドオンボードは前々から購入していたので、本日こちらのOTG接続を試したところ設定も簡単ですぐに接続することができました。
    接続方法が増えるのはいいことですね、こういった情報は検索してもでてこないので凄く助かります。

    ありがとうございます!

    • わざわざどうもありがとうございます。
      このブログはまだまだなので、Raspberry Piの検索で常にヒットするように頑張ります。
      また出来そうな記事はトライしてみてください。

コメントする

コメントは日本語で入力してください。名前は表示されます。メールアドレスは表示されません。

CAPTCHA

この記事の主な流れ