【Python入門】サンプル集・使い方

Pythonの基礎文法から応用例までについて入門者向けに解説します。

【Pythonとは】主な特徴、環境構築

Pythonとは、数値計算や機械学習を中心に幅広い用途で利用されている人気急上昇中のプログラミング言語です。
言語の仕様上、効率よく短く読みやすいコードを書きやすく、これからプログラミングを学びたいという初心者にもおすすめできます。
ラズベリーパイ、M5stackなどのIoT機器を使えば、Pythonを使って電子工作や組み込みもできます。

環境構築」や「プログラムの作成・実行手順」などについて以下に整理しました。

詳細記事
はじめに 【Python】主な特徴(メリット・デメリット) ■【Python】できること
Python環境構築 【Windows版】Python開発環境を構築する方法
【Mac版】Python開発環境を構築する方法
■Linux環境(Ubuntu, Rasbian)・・・標準搭載されてるので環境構築不要
Google Colab・・・無料で高性能なクラウド型の開発環境。面倒なインストール作業不要。
書き方 HelloWorldコメント文print関数で日本語出力

動画解説

Youtube、ニコニコ動画でPython入門動画を公開しています。

Youtube版 Python超入門
ニコニコ動画版 Python超入門

【基礎編①】変数、構造化、関数、オブジェクト指向、標準入出力、ファイル

Pythonの基礎(変数、構造化、関数、オブジェクト指向、標準入出力、ファイル操作など)ついて整理しました。

Pythonの基礎編
変数① 変数の代入文字列型の変数数値型の変数(int・float・bool・complex)数列型の変数(range)
変数② リスト・タプル・辞書・配列の違いリスト型(list)タプル型(tupple)辞書型(dict)セット型(set)NumPy型(ndarray)データフレーム型(DataFrame型)
構造化 演算子if文(条件分岐)for文(繰り返し①)while文(繰り返し②)continue文(スキップ)break文(繰り返し終了)pass文(何もしない)del文(変数・オブジェクトの削除)try-except文(例外処理)import文(ライブラリ読込)with文(終了処理の省略)関数(def)オブジェクト指向(class)
標準入出力 標準出力標準入力コマンドライン引数
ファイル テキストファイルの読込テキストファイルの書込バイナリファイル処理BASE64でエンコード・デコードXMLファイル処理CSVファイル処理JSONファイル処理ファイル・ディレクトリの操作ファイル圧縮・解凍(ZIP)画像⇔PDFデータの暗号化・復号化
その他 Python最速入門(基本文法の記述例)バージョン2と3の違いPythonとC言語の文法比較(Cプログラマ向け)
Pythonでよく使うライブラリ集Python超入門(動画解説版)

【応用編①】統計処理、機械学習、画像処理など

Pythonで大量のデータを扱ったり本格的な数値計算をする場合は、用途に応じてライブラリを使います。
ライブラリの中で最も基本になるのが「NumPy」です。

科学計算ライブラリ別・使い方まとめ
はじめに 【Python】標準モジュールで数値計算
数値計算 NumPy(matlab風) ■SciPy(NumPyの拡張)■Pandas(R言語風) ■SymPy(matlab風の記号演算) ■NetCDF4 statsmodels(統計モデル)
画像処理 OpenCVScikit-imagePillow
機械学習 Keras(深層学習) ■PyTorch(深層学習)Scikit-learnChaiper(深層学習) ■Theano ■Caffe ■TensorFlow(深層学習)
言語処理 ■NLTK(自然言語処理) ■Janome(形態素解析)MeCab(形態素解析)gensim(トピックモデル)
グラフ Matplotlib(matlab、gnuplot風) ■seaborn
その他 ■SimPy ■PyODE (物理演算) ■python-control(制御工学) ■Basemap(地図) ■OpenSFM(3Dモデル、点群)
分野別 機械学習画像処理音声信号処理制御工学ロボット工学数値計算株価予測ビットコイン分析物理シミュレーション

【応用編②】ゲーム制作、GUI、システム、ネットワーク、Webサーバー

Pythonを用いた「ゲーム制作」「システム」「ネットワーク」「Webサーバー」について整理しました。

ゲーム制作・GUI
ゲーム ゲームライブラリの比較PyGamePyOpenGL
GUI GUIライブラリの比較kivytkinter ■Flexx ■wxPython ■PyQt5
応用例 ブロック崩し卓球ゲーム(PONG)
ネットワーク、Webサーバー、CGI関連、システム関連
ネットワーク ネットワークプログラミングPymodbus(シリアル通信)
Webフレームワーク Flask入門Django入門
Webスクレイピング ライブラリ比較BeautifulSoup4入門Selenium入門(ブラウザ操作)
データベース PythonでMySQLを操作PythonでSQLiteを操作
メール Gメールの送信
システム 日時データ処理コンピュータの情報取得UNIXコマンドの実行Python情報取得
作業の自動化Googleドライブの操作(PyDrive)

【応用編③】電子工作(ラズパイ・Arduino)、便利ツール

電子工作(ラズベリーパイ・Arduino)への応用や、役に立つツールやサイトについて整理しました。

電子工作への応用
ラズパイ ラズベリーパイ+Pythonで電子工作入門
Arduino Arduinoを遠隔操作
便利なツールやサイトなど
コーディング規約 ■コーディング規約とは ■命名規則(PEP-8)
便利ツール 2to3(Python2→3)Python3→exe変換Jupyter Notebook
SNS QittaTwitterヤフー知恵袋
おすすめサイト note.nkmk.meとほほのwebLetsプログラミングPythonプログラミング(明治大学)はやぶさの技術ノート@suzu6to-kei.net
Python
西住工房

コメント

タイトルとURLをコピーしました