『こんにちはPython』のスカッシュゲームを今度はMacOSで動かしてみた

はじめに

前回は、ラズパイで動かしてみましたが、今度はMacで動かしてみたので紹介します。
前回の記事はこちら↓

事前準備

MacにPython3をインストールするには、Python公式サイトからpkgファイルをダウンロードしてインストールする方法もありますが、Homebrewというパッケージマネージャーを使うともっと簡単です。

Homebrewではアップル(またはあなたのLinuxシステム)が提供していないあなたの必要なものをインストールできます。
(中略)
HomebrewはmacOS(またはあなたのLinuxシステム)の機能を補完します。
Homebrew公式サイト より引用

Homebrewのインストール

ターミナルを起動し、Homebrew公式サイトに書いてある通りに、下記のコマンドを貼り付けて実行してください。

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

これだけでHomebrewのインストールが完了します。

Python3のインストール

ターミナルを起動し、下記のコマンドを貼り付けて実行してください。

brew install python3

これでPython3もインストール完了です。

スカッシュゲームのソースコードをダウンロード

スカッシュゲームのソースコード(scash.py)は、すがやみつる先生のホームページにありますので、ダウンロードしておきましょう。

修正開始

ターミナルで以下のコマンドを実行すると、IDLEが起動します。

idle3

IDLEでscash.pyを実行してみましょう。

スクリーンショット 2020-06-07 16.20.15

ラズパイの時と同じModuleNotFoundErrorが発生しました。
winsoundはWindows専用のモジュールですから、ラズパイだろうがMacだろうがエラーになるのは当然ですね。

SoXのインストール

MacでBeep音を出すときもラズパイの時と同じようにSoX(Sound eXchange)を使います。
SoXのインストールもHomebrewを使うと簡単です。
ターミナルに下記のコマンドを貼り付けて実行してください。

brew install sox

これでSoXのインストールは完了です。

気を取り直して、修正開始

修正の仕方は、ラズパイの時と全く同じです。

①5行目

import winsound

import os


②54行目
③58行目

winsound.Beep(1320, 50)

os.system('play -n synth %s sin %s' % (50/1000, 1320))


④67行目

winsound.Beep(2000, 50)

os.system('play -n synth %s sin %s' % (50/1000, 2000))


⑤91行目

winsound.Beep(200, 800)

os.system('play -n synth %s sin %s' % (800/1000, 200))


修正ができたらIDLEから実行してみましょう。
ちゃんとスカッシュゲームが始まって、音も鳴りましたか?


まとめ

ラズパイに続き、Macでも動くように修正してみました。
全く同じ修正方法で動かせたのはラズパイ(Raspbian)もMacOSもUnix系統のOSだからです。
プログラミングをやっていると、様々なOSに対応した物を作らなければいけない場合があります。
様々なOSの違いをわかった上で、プログラミングをすると、知識が深まると思いますので、チャレンジしてみてください。





この記事が気に入ったらサポートをしてみませんか?