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

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

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

Pythonとは、統計処理や機械学習、ディープラーニングといった数値計算分野を中心に幅広い用途で利用されている人気なプログラミング言語です。
主な特徴として「効率のよい、短くて読みやすいコードを書きやすい」、「ライブラリが豊富なのでサクッと色んなことができる」ということで、初心者にも挫折しにくいプログラミング言語なためオススメです。

数値計算だけでなく、簡単なゲーム作成やハードウェアの操作(ラズベリーパイ、M5stackなど)、サーバー構築もできます。

【Python】メリット・デメリットと特徴
この記事では、近年人気急上昇中のプログラミング言語「Python」を学習するメリット(利点)を解説します。

Pythonの開発環境を構築する方法については以下のページを御覧ください。

【Python】インストールする方法(Windows, MacOSX)
Windows10, MacOSXにPython環境をインストールする方法ついて紹介します。
【Python3】Hello World!
この記事では、Python3で「Hello World!」する方法ソースコード付きで解説します。
【Python】コメントの書き方(1行、複数行、日本語)
この記事では、Python言語でコメントを記述する方法をソースコード付きで解説します。
【Python】print関数で日本語を使う
この記事では、Pythonのの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.netPython(三重大学)
Python
技術雑記

コメント

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