Python 入門から応用まで 記事をまとめました

これまで投稿してきた記事をアクセスしやすいように一覧にしました。

応用についても、過去の分を整理しつつ更新していきます。

Pythonの前提

リンク概要
Pythonのメリット・デメリットSE7年目の私が考えるPythonを選ぶ3つの理由。メリット・デメリットです。
開発環境のセットアップ最新のAnacondaをWindows 10にインストールしてみます。

「Visual Studio Code」をセットアップ
Pythonのスクリプトを編集するためのエディタをWindows 10 にインストールしてみます。
基本文法まとめプログラミングの基礎を理解している方に向けて、Pythonの基本文法をまとめました。

Python入門

リンク概要
コメントの書き方Pythonで、処理の説明や経緯・背景を記述するための方法を紹介します。
型を学ぶ一般的な型についてと、Pythonでの活用の仕方を紹介します。
変数を学ぶ一般的な変数についてと、Pythonでの活用の仕方を紹介します。
条件分岐 : if を学ぶ処理を条件で分けて実行する方法を紹介します。
繰り返し : for を学ぶ処理を繰り返し実行する方法を紹介します。
繰り返し : while を学ぶ処理を繰り返し実行する方法を紹介します。
繰り返しでスキップ・脱出 を学ぶ処理の繰り返しでスキップしたり、脱出したりする時の方法を紹介します。
関数を学ぶ一般的な関数についてと、Pythonでの書き方を紹介します。
例外処理 : try を学ぶ一般的な例外処理についてと、Pythonでの書き方を紹介します。
リストを学ぶデータを効率的に扱うための概念を紹介します。
リストの最大値・最小値・合計値を計算するリストを活用して、よくある処理を簡単に実行するためのPythonの機能を紹介します。

Python入門2

リンク概要
switch の代わりを検討するPythonにはswitch文、case文が存在しないため代替手段を考えてみる。
for else を学ぶforのブロックでbreakされなかった時に実行したい処理を記述する方法を確認します。
キーが入力されるまで待つユーザからの入力を待つ方法を紹介します。
複数行の文字列を宣言する複数の文字列の宣言の仕方を確認します。
グローバル変数とglobal宣言関数内からグローバル変数の値を更新する方法を紹介します。
関数のデフォルト引数と注意関数の引数にデフォルト値を設定する方法と注意を確認します。
関数の引数 可変長引数引数の数を任意にしたい時に使える関数の定義の仕方を確認します。
関数のアノテーション関数の引数、戻り値の説明を記述する方法を確認します。
2次元配列を指定の列で昇順・降順にする表や読み込んだcsvの内、指定した列を基準に昇順・降順にソート(並び替え)する方法を確認する。
高階関数関数を引数・戻り値で扱える高階関数を確認します。
高階関数2高階関数をlambda式で書いてみます。
関数オブジェクト関数を変数へ保存して扱う方法を確認します。
内部関数・関数内関数・インナー関数nonlocal 宣言について確認します。
使用しなくなった変数の破棄 / GCGCの走らせ方を確認します。
__repr__と__str__オブジェクトの文字列表現について確認します。
Nanを判定Nanの判定方法を確認します。
関数名を取得する関数名の取得の方法を確認します。
コード上で変数が存在するか確認する変数が存在するかの確認方法を紹介します。
コード上でオブジェクトに指定の属性が存在するか確認するオブジェクトに指定した属性が存在するか確認する方法を紹介します。
コードの何行目かを取得プログラム実行中に、その行がソースコード上で、何行目かを取得してみます。
assertするassertする方法と、最適化オプションを確認します。

Pythonの便利な関数や仕組み

リンク概要
フォルダを作成作業の効率化、処理の結果を保存するときなどによく行うフォルダの作成の仕方を紹介します。
処理を一時停止一定時間ごとに処理を行いたい場合などに使う処理の一時停止の仕方を紹介します。
コマンドライン引数プログラムの実行ごとに、処理で使う値を簡単に取得・設定する方法を紹介します。
キーボードからデータを受け取るプログラムの実行中に、処理で使う値を簡単に取得・設定する方法を紹介します。
日付を扱うPythonで、日付の取得・計算の仕方を紹介します。
何週目か週数を取得する週数の取得の仕方を確認します。
月の最終日を取得日付の処理をする際などに必要になることがある、月の最終日の取得の仕方を確認します。
UNIXのタイムスタンプを日付の文字列に変換するUNIXのタイムスタンプを日付の文字列に変換する方法を確認します。
文字列の操作Pythonで、文字を結合させるなどの操作の仕方を紹介します。
文字列を含むか判定する特定の文字列に、任意の文字列が含まれるかを判定する方法を紹介します。
文字列を改行ごとに分割する文字列中の改行ごとに文字を配列に格納して返す関数を紹介します。改行コードを残すかも指定できます。
文字列の先頭を0で埋める桁数を合わせて表示する時などに便利な関数お紹介します。
文字列の先頭、末尾の空白・タブ・改行を削除する文字列の先頭、末尾の空白・タブ・改行をかんたんに削除する方法を確認します。
文字列を左揃え・中央揃え・右揃えにする出力結果などを確認に便利な文字列を揃えるための関数を紹介します。
A-Z、a-Z の文字列をリストで取得するPythonが用意している文字列のリストの取得方法を確認します。
文字列を反転、1文字間隔などで取得する拡張スライス構文を利用して、文字列を簡単に操作してみます。
ランダムな操作特定の範囲の数値をランダムに生成する方法などを紹介します。
安全な乱数を生成するデフォルトの擬似的な乱数ジェネレータではなく、セキュリティや暗号学的に設計されたモジュールを使って乱数を生成してみます。
処理の経過時間を測定特定の処理の実行時間を確認する方法を紹介します。
よく使う正規表現URL、メールアドレスなどのよくマッチさせたい文字列の正規表現を紹介します。
range関数for文などで使う、指定した整数のリストを生成する方法を紹介します。
for文でindexにアクセスする意外と面倒なindexを簡単に取り出す方法を確認します。
zip関数複数のリストから、同時に値を取り出す方法を紹介します。
2つのリストの差分を取得かんたんな実現方法を紹介します。
指定したサイズの空のリストを作成する空のリストを予め準備する方法を紹介します。
リストが空か確認するかんたんに確認する方法を紹介します。
文字列のリストから空の要素を削除filterを利用して、文字列のリストから空の要素を削除する方法を紹介します。
リストの要素をランダムに選択リストからランダムに要素を取得する方法を紹介します。
辞書型のキーをリネームする辞書のkeyのリネーム方法を確認します。
辞書をマージ複数の辞書をマージする方法を確認します。
CSVファイルを扱うCSVファイルの読み込み、書き込みの仕方を紹介します。
XMLファイルを扱うXMLファイルの読み込み、書き込みの仕方を紹介します。
XMLを整形して表示するXMLを整形して表示する方法を確認します。
JSONファイルを扱うJSONファイルの読み込み、書き込みの仕方を紹介します。
JSONを整形して表示するJSONを整形して表示する方法を確認します。
YAMLをパースするYAMLのパースの仕方を確認します。
ZIPファイル 圧縮・解凍ファイルを圧縮・解凍する方法を紹介します。
ディレクトリを一括で作成ファイルの保存先をかんたんに用意してみます。
ファイルをコピーするファイルのコピーの仕方を確認します。
実行中のディレクトリ(フォルダ)を変更する実行中のディレクトリを変更、確認します。
ファイルサイズを取得する任意のファイルサイズの取得の仕方を確認します。
ファイル名から拡張子を取得拡張子の取得の仕方をいくつか紹介します。
ファイルをリネームするファイルのリネームの仕方を確認します。
OSのセパレータを取得環境ごとに異なる、パスの区切り文字列の取得の仕方を確認します。
ファイル / フォルダを削除プログラムからファイル/フォルダを削除する方法を確認します。
URLエンコード / デコードするURLのエンコード・デコードする方法を確認します。
指定のURLから画像をダウンロード指定されたURLから画像をダウンロードしてみます。
オブジェクトをファイルに保存するPython標準のpickleを使用してみます。
無限大を表現する無限大の表現の仕方を確認します。
UUIDを生成RFCに準拠したUUIDの生成の仕方を紹介します。
CPU数を取得CPU数(スレッド数)を取得してみます。
環境変数を取得するPathなどの環境変数を取得してみます。
実行環境のPythonのバージョンを出力する実行環境のバージョンを取得してみます。
実行中のインタプリタのフルパスを取得実行中のインタプリタのフルパスの取得の方法を紹介します。
実行を終了させるプログラムの実行を終了させる関数を紹介します。

Tips

リンク概要
ListedColormap を一覧で描画するListedColormapの内容をかんたんに確認する方法を紹介します。
カレンダーを表示カレンダーを出力させる方法を確認します。
コマンドプロンプトなどの色付きの文字を出力ターミナル・コマンドプロンプト・端末へ、色付きの文字を出力の仕方を確認します。
プログラムの実行開始からの経過時間を取得特別な機能がなさそうなため、具体的にどのようにすべきかを紹介します。
コマンドラインから関数を実行コマンドラインから直接ファイル内の特定の関数を実行してみます。
簡単に表をキレイに表示表をきれいに表示する方法を紹介します。
emojiを表示Pythonでemojiを表示させる方法を紹介します。

Pythonの応用とまとめ

リンク概要
アプリ化して配布するexe化・app化する PyInstaller を使ってアプリの配布の仕方を紹介します。
画像処理PythonでOpen CVを使って画像を扱う方法を紹介しています。
日本語を形態素解析するJanomeを使って形態素解析をしてみます。
「OpenGL」を学ぶ準備「PyOpenGL」「freeglut」の環境構築、シンプルな描画などを行います。
OpenGLまとめOpenGLの基礎、Pythonからの実行の仕方をより具体的に。PyOpenGLを学ぶための有名なチュートリアル(NeHe、PyCG)、ModernGLとそのサンプルをまとめました。
機械学習を学ぶよく知られる基本的な機械学習について体系的に学びます。
強化学習を学ぶOpen Gymを試します。
Deep Learningを学ぶMNISTを試してみます。
アルゴリズム入門定番のアルゴリズムをPythonで学びます。
seabornチュートリアルまとめ公式のチュートリアルを日本語に翻訳し、まとめました。
デザインパターンを学ぶdesign-patternのまとめです。
Processing まとめProcessingの関数のまとめです。
macOS向けにアプリを作ってみるmacOSで、Python, PyQt, OpenCVを組み合わせたアプリをPyInstallerで.appにして起動する。

Numpy

リンク概要
チュートリアル Quickstart まとめ公式のチュートリアルを翻訳しながら一つづつ処理を確認しました。
基本計算まとめNumpyで、スカラー演算、平方根・累乗、四捨五入, 切り捨て, 切り上げ, 三角関数、標準偏差などを確認します。
ベクトル同士の計算のまとめ四則演算と内積を確認します。
行列の計算まとめスカラー演算、ゼロ行列, 単位行列、転置行列、逆行列、要素同士の加算、行・列の合計・平均、全要素の合計のなどを確認します。

Adobeのソフトと連携

リンク概要
PDFをdocxに変換する「pdf2docx」を使って、PDFをdocxに変換してみます。
PDFを操作するPyPDF2」を使って、PDFの分割、結合、挿入をしてみます。
PSDのドキュメントのサイズを取得「psd-tools」を使って、キャンバスサイズを取得してみます。
PSDのレイヤー名を変更する「psd-tools」を使って、レイヤー名の末尾に文字列を追加してみます。

Microsoft Officeと連携

リンク概要
Wordファイルを操作する「python-docx」を使ってワードのファイルを操作してみます。
Excelファイルを操作する「openpyxl」を使ってエクセルのファイルを操作してみます。
PowerPointファイルを操作する「python-pptx」を使ってパワポのファイルを操作してみます。

APIで外部のWebサイトと連携

リンク概要
CoincheckのAPI板情報の取得、資産情報の取得をしてみます。

Matplotlib・Cartopyで地図を描画する

リンク概要
セットアップCartopyをインストールして、世界地図を描画してみます。
要素を描画国の境界線、海岸線、湖、土地、海、川などの要素を描画してみます。
グリッドライン、緯度・経度を描画地図にオプションを設定し、グリッドライン、緯度・経度を描画してみます。
地図に地点を描画緯度、経度を指定して、テキストと一緒に地図上に描画します。
特定の範囲を描画世界地図の中から、アメリカの一部のみ描画してみます。
タイムゾーンを描画地図にタイムゾーンの線を描画してみます。
Matplotlibで日本語を表示タイトルなどに日本語を設定する場合に文字化けすることがありますのでその対応方法を確認します。
様々な投影方法で描画公式で提供されている33種類の投影方法を一覧で確認します。
都道府県の境界を取得・描画都道府県ごとの境界を描画してみます。

foliumで地図を描画する

リンク概要
folium 表示・保存・マーカーインストールと、地図の表示、マーカーを設定し、htmlへの出力を確認します。
ヒートマップを表示ヒートマップを表示させてみます。
日本の地図を表示 GeoJSON を描画GeoJSONのデータを地図上に描画してみます。

GUI

リンク概要
PyQtをインストールPyQtインストールして、サンプルとして、ファイルを選択するダイアログを表示して、選択されたファイルのパスを取得してみます。
PyQtでユーザが選択した画像をグレースケール化して保存PyQtでユーザが選択した画像をグレースケール化して保存する簡単なアプリを作ってみます。
PyhtonのGUI「Tkinter」まとめPythonで標準で使えるGUI「Tkinter」のまとめです。

Pandas

リンク概要
xlsxをDataFrameとして読み込むxlsxをDataFrameオブジェクトとして読み込んでみます。
csvをDataFrameとして読み込むcsvをDataFrameオブジェクトとして読み込む、区切り文字の指定をしてみます。
DataFrameを結合複数のDataFrameを pd.concat で 結合してみます。
任意の変数を二値化DataFrame のyes, noをTrue, Falseに変換する。
任意の変数を二値化2DataFrame 任意の変数を二値化する 回帰を分類にする時などに使える。

PyTorch

リンク概要
MNISTを試すPyTorchでMNISTを分類してみます。
テンソルの次元、サイズの例MNISTでレイヤーのサイズを確認していた時にハマった際のメモです。
活性化関数「Mish」を実装してみる活性化関数のうち、少し前に話題になった「Mish」を実装してみます。

Beautiful Soup

リンク概要
HTML / XML を解析 インストールと整形して表示Beautiful Soupをインストールシンプルなサンプルを実行します。
HTML / XML を解析 基本的な処理1titleタグやdivタグの要素(メタ情報、内部のテキスト)の取得方法を確認します。
HTML / XML を解析 基本的な処理2より高度に値を選択取得する方法を確認します。

統計学入門

リンク概要
確率確率を定義から確認します。
確率変数と確率分布RVS, PMF, PDFを確認します。
事象和事象、積事象、余事象について確認します。
少し発展した確率・事象同時確率・条件付き確率、独立事象、周辺確率について確認します。
期待値・分散と共分散タイトルのそれぞれの用語について、求め方を確認します。