Python と他の言語を比較します ChatGPT に Python と似ている言語 や、その逆に Python とは構造が異なる言語 について質問してみました。あくまで AI の答えですから参考程度に読んでください。異論反論などがありましたら、コメント欄でお寄せください。 Python と似ているプログラミング言語は? [Q] Python と似ているプログラミング言語を教えてください。 [A] Python と似ているプログラミング言語はいくつかあります。以下にいくつかの例を挙げます。 1. Ruby: Ruby は Python に似たシンタックス(文法)を持つ動的型付け言語 […]
巷で話題になっている人工知能チャットボット ChatGPT (Chat Generative Pre-trained Transformer) に私もはまっています。ChatGPT は、OpenAI という企業が開発した人工知能です。自然言語処理という技術を使って人が話す言葉を理解でき、いろいろなトピックに関する知識を持っているので、ユーザーが聞きたいことについて答えることができます。それだけでなく、大まかな指示を伝えると、なんとプログラミングのコードまで書いてくれます(私の仕事がなくなったらどうしよう)。 ChatGPT の API について調べます こんな便利な ChatGPT を […]
Axes3D.view_init(elev, azim) Matplotlib では、Axes3D.view_init(elev, azim) を使って、三次元グラフを「どの方向から見るか」を指定できます (下図の矢印が視線の方向)。 引数の elev, azim は、それぞれ elevation angle (仰角)、azimuth (方位角) の略で、上図の θ, φ に相当するパラメータです("azimuth" は「アジマス」と発音します)。 Matplotlib をインポートして、適当な三次元グラフをプロットしてみます。 # MATPLOTLIB_AXES3D_INIT_ […]
Python コミュニティ広場を開設しました このページは、皆さんに Python について楽しく自由に語ってもらう ために用意しました。 「Python でこんなことをしてみたい。でも、どんなコードを書いていいかわからない」 「こんなコードを書いてみたけど動かない。どこに原因があるのかな?」 みたいに技術的な疑問点を尋ねてもいいですし、 「Python のここが好き」 「今、他にこんな言語を学んでいるんだけど ...」 「あのライブラリの最新バージョンがアップされたよ」 みたいに他愛のない(?)おしゃべりも楽しいです。もちろん、現役エンジニアの皆様の 「ここは、こう書く […]
Pygame Zero ゲーム開発入門 Pygame Zero はプログラミングの教育目的で設計された、Python のゲーム開発用ライブラリです。色々な手続きをバックグラウンドで処理してくれるので、短いコードでゲームを作れるようになっています。実際、ある程度 Python のコードを書ける人であれば、Pygame Zero の習得は決して難しくないはずです。ゲームが好きな人、特に私のようなファミコン世代 (← 年がバレる) にとっては、遊び感覚で楽しみながら学習できると思います。私は数値計算屋で、ゲーム開発が専門ではありませんが夢中になりました。しばらく本業をほったらかしてゲームを作ってま […]
補数 (complement) この記事では 補数 (complement) について解説します。補数は計算機理論を学ぶ上で欠かせない概念です。基本情報技術者試験などにも頻繁に登場する用語なので、プログラマーを目指す皆さんもしっかり押さえておきたいところです。 補数の定義 「補数」なんて初めて聞くと、いかにも技術的な雰囲気がして難しそうに思えますが、実はとても簡単です。厳密な定義から始めると、簡単なことまで不必要にややこしく感じてしまうので、具体例から始めます。ひとまずは $10$ 進数で考えることにします。 $8$ に対する $10$ の補数は $2$ $35$ に対する $10 […]
Pythonでじゃんけん 人間のプレイヤーとコンピュータが じゃんけん をして勝敗を表示するプログラムを作ってみましょう。プレイヤーの出す手は「グー, チョキ, パー」の 3 通りです。それぞれの手に対してコンピュータの出す手も「グー, チョキ, パー」の 3 通りなので、その組み合わせは全部で 3 × 3 = 9 通りあります。とはいえ、9 通りの分枝を記述するのは大変なので少し工夫します。そのために、じゃんけんの手のそれぞれに、 グー: 0 点, チョキ: 1 点, パー: 2 点 という数字を割り当てて、次のような判定スコアを定義します。 じゃんけん判定スコア […]
Googletrans (Google Translate API) Google は Google Translate (Google 翻訳) とよばれる多言語翻訳サイトを無料で提供しています (左側のボックスにテキストを入れると、自動的に右側に翻訳文を表示してくれるという、とてもシンプルな使い方のできる Web アプリです)。Googletrans は、Google Translate API を実装した Python ライブラリです (Python から Google Translate に接続できるということです)。 Googletransのインストール Google Colabo […]
filter() Python の filter() はリストやタプルなどから、特定の条件を満たす要素を抽出 (フィルタリング) する組み込み関数です。filter() 関数の正式構文は filter(function or None, iterable) ですが、実用上は filter(関数, リスト) と覚えておけば十分です。ただし、関数は何でもよいというわけでなく、True または False を返すように定義されていなければなりません。簡単な例として、50 以上の数値を渡すと True を返す関数 geq_fifty() と、適当なリストを filter() に渡してみます。 # P […]
Noneオブジェクト None は NoneType クラス から生成される唯一のオブジェクトであり、値が存在しない ことを示すために用いられます。C 言語の Null や Ruby の nil に相当します。 # PYTHON_NONE # In[1] # Noneのクラスを調べる type(None) NoneType たとえば、戻り値が設定されていない関数を実行してみましょう。 # In[2] # 戻り値のない関数を定義 # pass は何もしないコード def myfunc(): pass myfunc() 画面には何も表示されませんが、このとき実際には None オブジェクトが […]