Pythonについて【プログラミング勉強ノート】

ブログ
当サイトの記事には、アフィリエイトリンクを含むものがあります。
アフィリエイトリンクは、ユーザー(あなた)がリンク経由で商品を購入すると、広告主などからサイトの運営者(わたし)に報酬が支払われる仕組みです。ユーザー側(あなた)に金銭的な利益や損失は発生しません。
リンク先の商品はわたしが実際に「良い」と思ったものであり、当サイトの記事の内容は広告主からの影響を受けていません。
何かご不明な点がございましたら、お手数をおかけしますがContactページよりお知らせください。

 

このページは、主に自分用のPythonに関係する情報まとめメモです。

Pythonとは

コンピューターに命令を書くための言葉。

プログラミング言語のひとつ。

Pythonを使うためには

環境構築」が必要。「環境構築」は意外と面倒くさい。

自分のPCでプログラミングできる状態にする作業を「環境構築」と言う。

Windows:Pythonの公式サイトからダウンロードしてインストールする。
 Mac:最初から入っている。(でも、バージョンが古い可能性あり。)

テキストエディタをインストールする。
 (僕はVScodeを使ってます。)

詳しい「環境構築」のやり方→https://prog-8.com/docs/python-env-win

ちなみに、Pythonの場合、Googleアカウントを持っているなら、Google Colaboratoryを使えば「環境構築」せずに一気にプログラムを書ける状態になる。

Pythonを勉強するときに使えるサイト

Progate(プロゲート) Python

環境構築」なしでいきなり勉強できる。

Progate(プロゲート) | Learn to code, learn to be creative.
Progateはオンラインでプログラミングを学べるサービスです。プログラミングを学んでWEBアプリケーションを作ろう。
公式のPythonチュートリアル

よく分からない場合は公式ドキュメントを見る。

Python チュートリアル
Python は強力で、学びやすいプログラミング言語です。効率的な高レベルデータ構造と、シンプルで効果的なオブジェクト指向プログラミング機構を備えています。 Python は、洗練された文法・動的なデータ型付け・インタープリタであることなど...
YouTube

色々動画が上がっている。キノコードさんの動画は分かりやすい。

Chainer チュートリアル

こちらも結構分かりやすい。

ディープラーニング入門:Chainer チュートリアル
Chainerの入門に最適なチュートリアルサイト。数学の基礎、プログラミング言語 Python の基礎から、機械学習・ディープラーニングの理論の基礎とコーディングまでを幅広く解説します。Chainerは初学者によるディープラーニングの学習か...

おおざっぱな使い方メモ

Pythonはインデントコードブロックを定義するので、インデントの入れ方には気を付ける。

コンソールに出力する

print("Hello world")

実行結果↓

Hello world

print()の中身が出力される。
文字はクォーテーション( ‘ ‘か” “)で囲む。

コメントアウト

先頭に「#」を付けると、その行の「#」以降の文字はプログラムの実行に関係なくなる。
プログラム内にメモを書く時や、一部の処理を試しに止めてみたい時などに使う。

#Hello worldを出力するための記述です。

print("Hello world")

実行結果↓

Hello world

算術演算子

計算に使う記号。

x + y    x と y の和
x - y    x と y の差
x * y    x と y の積
x / y    x と y の商

x // y   x と y の商を切り下げた値を表示
x % y    x / y の剰余(余り)を表示

-x       x の符号反転
+x       x そのまま

x ** y   x の y 乗

関係演算子

2つの対象の関係を調べるための記号。条件の記述に使う。

x == y       x と y が等しい
x != y       x と y が等しくない

x > y        x は y よりも大きい
x < y        x は y よりも小さい(xはy未満)

x >= y       x は y と等しいか大きい(xはy以上)
x <= y       x は y と等しいか小さい(xはy以下)

x in y       要素x が y 内に存在する
x not in y   要素x が y 内に存在しない

変数

変数名 = 値」で定義する。Pythonは動的型付け

「=」は「等しい」ではなく、「右辺を左辺に代入する」意味。

#例:変数「apple_price」に値「100」を代入する場合

apple_price = 100
  • 予約語(文法に使われる「if」とか)は変数として登録できない。
  • 変数」の名前の頭文字は、数字にできない。
  • 変数」の名前はクォーテーションで囲む必要は無い。
  • スネークケース(2語以上の変数名を使うときは、「_ (アンダーバー)」で区切るの)を推奨。
「変数」を使うメリット
  • 扱っているデータの中身が何を表しているのか明確になる。
  • 同じデータを繰り返し利用できる。
  • 変数」の値に変更が必要になった場合、変更する箇所が1箇所で済む。

「変数」の型

3. 形式ばらない Python の紹介
以下のサンプルでは、入力と出力はプロンプト (>>> や...) の有無で区別します: 例を実際に試す場合は、プロンプトが表示されているときに、サンプル中のプロンプトから後ろの内容全てを入力します。 コード例の枠の右上にある>>> をクリッ...

変数」には、いくつか種類がある。

  • int 整数型 
  • float 浮動小数点数型

など

文字型
  • string 文字型

文字をクォーテーションで囲んで使う。

リスト型

複数の値をまとめるのに使われる型。

任意の型のデータを格納できる箱みたいなもの。

型変換(キャスト)

変数の型」を別の型へ変換すること

#数字の文字列を「文字型」に変換する場合

str() 
#数字の文字列を「整数型」に変換する場合

int()

プログラムの基本的な動き方(制御構造)

基本的にプログラムは以下の3つの動きをする。

順次

上から順番に命令が実行される。

選択

条件によって処理を分岐できる。

  • if

反復

条件が成り立つまで反復する。もしくは条件が成り立たなくなるまで反復する。など。

  • while
  • for

関数

ある値を与えると、特定の処理を行って値を返すプログラム。

与える値を「引数」、返ってくる値を「返り値」や「戻り値」と呼ぶ。

組み込み関数

組み込み関数は、あらかじめ用意され標準で使用できる「関数」。

Pythonは69個あるらしい。

組み込み関数
Python インタプリタには数多くの関数と型が組み込まれており、いつでも利用できます。それらをここにアルファベット順に挙げます。,,,, 組み込み関数,,, A, abs(), aiter(), all(), anext(), any()...
組み込み関数の例
  • print() 文字の出力。
  • round() 値の丸め込みにつかう。
  • input() コンソールに入力した値を受け取れる。受け取った値は文字型。

ユーザー定義関数

ユーザー定義関数は、自分で作った「関数」。

def 変数名(仮引数):
    #処理

で作る。

ライブラリ

  • ライブラリ:複数の「モジュール」をまとめたもの。
  • モジュール:複数の「関数」をまとめたもの。

便利な道具箱みたいなイメージ。

import

関数を呼び出すには、インポートする必要がある。

例:「pandas」をインポートして以下「pd」という名前で扱いたい場合

import pandas as pd

標準ライブラリ

最初からPythonプログラムに埋め込まれているライブラリ。

importするだけで使える。

PyPI · The Python Package Index
The Python Package Index (PyPI) is a repository of software for the Python programming language.
~主な標準ライブラリと主な用途~
  • pip ライブラリのインストールと管理
  • random 乱数を生成、ランダムな値の抽出
  • math 数学に関係する処理
  • sys インタプリタに関する操作
  • os ファイルの操作など
  • Tkinter GUIライブラリ
  • re 正規表現の操作
  • time 時刻データへのアクセスと変換
  • calendar カレンダー作成
  • datetime 日付や時刻に対しての操作
  • pandas データ解析 …非公式のチートシート
  • Numpy 多次元配列の扱い
  • matplotlib グラフ作成/データの可視化
  • sklearn 機械学習

外部ライブラリ

Pythonに元々は入っていなライブラリ。
使いたい場合は、別途インストールする必要がある。(pipを使う)

~便利な外部ライブラリと主な用途~
  • OpenCV 画像認識や画像処理など
  • Pygame 2Dゲームを作れる
  • TKinter デスクトップアプリを作れる
  • Flask ウェブアプリケーションフレームワーク
  • Django ウェブアプリケーションフレームワーク
  • Beautiful Soup WEBスクレイピング
  • Selenium ブラウザの操作
  • MeCab 形態素解析
  • tweepy Twitterの操作
タイトルとURLをコピーしました