Pythonがpiの優先言語である理由


9

Raspberry Piを制御および操作するためにPythonが優先言語として認識されているのはなぜですか?

PERLなどの他のプログラミング言語(Raspbianなどのディストリビューションに含まれている)よりもPython言語が選ばれているのはなぜですか?

質問は、それらのいずれかに傾いているのではなく、ラズベリーパイに関連して互いにメリットを見つけようとしています。


5
raspberrypi.orgから:「Raspberry Pi Foundationは、Pythonを学習者向けの言語として推奨しています。ただし、ARMv6用にコンパイルされる任意の言語をRaspberry Piで使用できます。したがって、Pythonの使用に限定されません。C、C ++、Java 、Scratch、RubyはすべてデフォルトでRaspberry Piにインストールされています。」したがって、彼らは事実上まったく理由もなくそれを推薦するだけです。彼らはそのリストのPERLを見逃しているようですが、PythonがPERLよりもピックアップしやすいのはおそらく本当です。
ガニマ

3
まったく意味がありません。私がこれに関係しているのは、Webサイト(上記の引用)の1つのカジュアルな文章だけだと思います。なぜなら、Pythonは簡単でLinuxで一般的に使用されているからですが、その意味では、 perlやrubyと言ったかもしれません。どんな場合でも、何の違いもありません。
ゴルディロックス

3
Pythonを使用したことはありませんが、私はその昔ながらのLinuxプログラマーがgoto言語を知っていることを知っています。多分それが彼らがそれを勧める理由です。それ以外の理由はわかりません。良い質問ですが。うまくいけば、これですべてがわかりやすくなります。また、私はコンパイルする必要があり、余分なことすべてがCである
ピョートル・クラ

2
Pythonは素晴らしいので?(xkcd.com/353
ユーザー

2
私は仕事でPythonでプログラミングしていますが、(ほとんどの場合)他のすべての場所でPerlを使用しています。たとえば、私はWiringPi :: APIおよびRPi :: WiringPiを具体的に書いたので、自分のPiで Perlを使用できます。
stevieb 16

回答:


10

Pythonは教育言語として設計されました。

始めるのは非常に簡単で、Pythonエコシステムは初心者にとって非常にフレンドリーです[2]。Python Tutorリストのアーカイブをチェックしてください。

このような返信は非常に一般的です-特にヘルプ以外の吸血鬼にとっては。

初心者に歓迎的で友好的なコミュニティをどこにも見つけていません。さらに、数年前にPyConでRaspberry Piをすべての参加者に配ったので、多くのPythonの専門家は、XMBCを実行しているだけでも、少なくともPiが動き回ります;)

また、Pi固有の観点から見ると、GPIOポートの制御開始するのは非常簡単です。

# blink.py
import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BOARD)
GPIO.setup(7, GPIO.OUT)

while True:
    GPIO.output(7,True)
    time.sleep(0.2)
    GPIO.output(7,False)
    time.sleep(0.2)

9行で完了です。これを実行sudo python blink.pyするために必要なことは、コンパイルやリンクなどについて理解する必要があることはほとんどありません。プログラミングについて何かを理解する必要はほとんどありません。

さらに、2つの選択肢があるという事実について考える場合-何も推奨しないか、何かを推奨する-Pythonの最小限の1行の推奨事項は、おそらく彼らが作成できる最高のものです。好みのある人なら誰でもそれを気にせず、選択した言語に行くでしょう。経験のない人は(できれば)イライラする経験をできるだけ少なくするでしょう[3]。


[2]:でも、Rubyは初心者にもかなりフレンドリーだと思います

[3]:Python 2と3の違いでさえ、Rubyのバージョン間の問題のいくつかを聞いたほど痛くないです。


1
gpioでpythonを使用することの欠点は、割り込みを介して実際に操作できないことです。
Καrτhικ


4

ガニマがコメントで述べたように:

raspberrypi.orgから:「Raspberry Pi Foundationは、Pythonを学習者向けの言語として推奨しています。ただし、ARMv6用にコンパイルされる任意の言語をRaspberry Piで使用できます。したがって、Pythonの使用に限定されません。C、C ++、Java 、Scratch、RubyはすべてデフォルトでRaspberry Piにインストールされています。」したがって、彼らは事実上まったく理由もなくそれを推薦するだけです。彼らはそのリストのPERLを見逃しているようですが、PythonがPERLよりもピックアップしやすいのはおそらく本当です

答えは、Pythonを任意に選択したことで、他の同様の言語よりも新しく、人気があるようです。


2

ROMサイトのラズベリーpiで利用できる他のOSがありますが、他の言語を必要とする、またはより適切に使用できるOSがあります。チップは、Pythonがピックアップするのがかなり簡単な言語であることを誰もが知っているどこよりも、教育的用途のためのものです。しかし、機能を有効にするライブラリや、c / c ++などのラズベリーpiで他の言語を使用する方法についての本を見つけることができると言っています。


1

彼らは、ソフトウェアエンジニアのキャリアで高く評価されるかもしれない主流の言語、Java、C、Ada、Pythonなどの言語を望んでいたと思います。

Algol、Pascal、Perl、PHP、JavaScript、FORTRAN、BASIC、Ruby、Smalltalkなどの言語は、よりニッチです。

Pythonが賢明な選択であるかどうかは議論の余地があります。選ばれました。

私の懸念は、構造化されていない方法でPythonを学習することです。これは、ほとんどのPiユーザーが学習する方法です。悪い習慣を思いとどまらせ、良い習慣を説明できるように、構造化されたコースの一部としてプログラミング学習者に実際に導入する必要があると思います。


Piは単なるツールであるため、誰かが構造化されていない方法でコーディングを学んでいるかどうかは関係ありません。この「インターネット」にはたくさんの本とコンテンツがあり、助けてくれる人を喜んで助けます。
ガニマ

2
「彼らは、ソフトウェアエンジニアのキャリアで高く評価されるかもしれない主流の言語を望んでいたと思います」確かに正しくありません。おそらくまだPythonで書かれたよりも多くのFORTRANの行が使用されています。おそらくPHPで生計を立てている人はPythonの10倍などです。理由が「ソフトウェアエンジニアが高度に使用する可能性のあるもの」である場合は、上記のリストから何かを選択した可能性もあります。
ゴルディロックス

goldilocksに完全に同意します。C#はPiでの私のメインストリーム言語です:)私はPerlやPythonをまったく使用しません。PHPは、LinuxにIISがないためです。
Piotr Kula 2014年

SEは主に.NET(C#)であり、主にIISを実行します。彼らは実用的な理由でこれを行いました-すべての元の開発チームは.NETとIIS環境ではるかに熟練していました。少なくとも、私が読んだいくつかのブログ投稿で彼らはそう言っています。
Wayne Werner

ここで将来、JavaScriptはニッチ言語ではありません。他のすべてのWebページからのすべてのWebページにあります。
YetAnotherRandomUser 2017年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.