Anaconda > Python
Jupyter notebook は、Pythonの実行環境
Spyder は、バグフィックスに使う
やること | 演算子 | 例 | |
足し算 | + | in 1+1 out 2 | |
引き算 | - | in 3-2 out 1 | |
掛け算 | * | in 2*3 out 6 | |
普通の割り算 | / | in 3/2 out 1.5 | |
1以下を切り捨てる割り算 | // | in 3//2 out 1 | |
割り算の余りを返す | % | in 3 % 2 out 1 | |
べき乗 | ** | in 2**3 out 8 |
a = 1 のように代入する
a = a + 1 は a += 1 と書いてもよい
予約語を変数として使おうとすると、invalied syntaxとなりできない。
予約語は緑色になるのでわかる。
数字から始まる変数も invalied syntax
代入の仕方によって変数の型をコントロールできる
整数を代入すると整数型(int)になり a = 3
少数を代入すると浮動小数点型(float)になる a = 3.0
””で囲むと文字列(str)になる a = "Python"
””で囲むと数字でも文字列(str)になる b = "5150"
Trueやfalseを代入すると真理値(bool)になる cond = True
type(変数) で変数の型を表示できる
文字列は足し算で結合できる
a+b out ’Python5150’
文字列に掛け算するとその回数分繰り返して結合する
3 * a out 'PythonPythonPython'
num = 3.0 out 3.0 //float型の変数を宣言
num2 = int(num) out 3 //Integer型にしてnum2に代入する
num2 = float(num2) out 3.0 //またfloat型に戻す
moji = str(num) out '3.0' //数値を文字列に変換
moji2 = "3.5" out '3.5' //数字を文字列として代入しても
num3 = float(moji2) out 3.5 //float型に修正することができる
//カンマで区切ってリストを代入することができる
num_list=[1,2,3] out [1, 2, 3]
//どんな型でも代入できる
general_list = [1,"Python",3.0] out [1,'Python',3.0]
//リストにいくつの要素が入っているかを確認する
len(num_list) out 3
1つの要素にアクセスするにはインデックス
複数の要素にアクセスするにはスライス
インデックスの例)
//数列の要素を取り出すにはインデックスを渡す
インデックスは0から始まっている。
num_list[0] out 1
num_list[1] out 2
//最後から何番目という出し方
num_list[-1] out 3
//特定の要素をインデックスを指定して置き換える
num_list[0] = 5 out [5, 2, 3]
スライスの例)
num_list = [1,2,3,4,5,6,7,8,9]
num_list[0:4] //0番目から4の1つ前の要素を取り出す
out [1,2,3,4]
//最初の引数を省略すると0番目から表示する
num_list[:5] out [1, 2, 3, 4, 5]
//最後の引数を省略すると最後の要素までを表示する
num_list[5:] out [6, 7, 8, 9]
num_list[-4:] out [6, 7, 8, 9]
文字列でもインデックスはスライスは使える。
moji = "Python3.6"
moji[0] out 'P'
\t タブ
moji2 = "Hello\tWorld!"
moji2 out Hello\tWorld!
print(moji2) out Hello World!
\n 改行
moji3 = "Hello\tWorld!\n"
print(moji3) out Hello World! //改行が入っている
//空のリストを作る []
num_list = []
//そこに単一の要素を付加する append(要素)
num_list.append(0)
num_list out [0]
//もう一回要素を付加すると
num_list.append(0)
num_list out [0,0] //2個目の要素として付加される
//リストを付加したいときは extend([リスト])
num_list.extend([3,4,5,6,7])
num_list out [0,0,3,4,5,6,7] //次の要素としてリストが付加される
//最後の要素を削除したい場合は pop()
num_list.pop() out 7
num_list out [0,0,3,4,5,6] //削除したので最後の要素が消えている
//特定の値の要素を削除したい場合は remove(値)
num_list.remuve(3)
num_list out [0,0,4,5,6] //指定された値の要素が消えている
//演算する 和 sum
sum(num_list) out 15
//リストを昇順に並び替える sort()
num_list2 = [4,2,6,3,7,4,8,5,1] //ランダムなリスト
num_list2.sort()
num_list2 out [1, 2, 3, 4, 4, 5, 6, 7, 8] //昇順になった
//半角スペースと特殊文字を取り去る .strip()
Prolang = "Python-C-Java-Peal \n"
Prolang out 'Python-C-Java-Peal \n' //文字列はそのままだが
Prolang.strip() out 'Python-C-Java-Peal' //.strip() でスペースと特殊文字を消すことができる
//特定の文字列がリストに含まれるかを検定する .find / in
Prolang.find("Java") out 9 //その文字列が何文字目から始まっているかを返す
Prolang.find("C++") out -1 //なければ負の値を返す
"Peal" in Prolang out True //こういう書き方もある ブール値で返す
//要素を他の要素に置き換える .Replace()
Prolang.replace("C","C++") out 'Python-C++-Java-Peal \n' //CがC++に置き換わった
//区切り文字を指定して要素を分割する .split()
Proglang = "Python-C-Java-Peal"
Proglang.split("-") out ['Python', 'C', 'Java', 'Peal'] //要素を分割
//要素をつないで1つの文字列にする 指定の文字で要素間に挿入できる .join()
Proglist = ['Python', 'C', 'Java', 'Peal']
",".join(Proglist) out 'Python,C,Java,Peal' //1つの文字列になったが ,で区切れられている
"".join(Proglist) out 'PythonCJavaPeal' //空白にすれば完全にくっつく
タプルはリストと同様に配列だが、上書きすることができない。
変更したくないものは、タプルで宣言する。
リストは[]
num_list = [1,2,3,4]
タプルは()
num_tuple = (1,2,3,4)
リストとタプルは相互に変換できる list関数 tuple関数
list(num_tuple) out [1, 2, 3, 4]
tuple(num_list) out (1, 2, 3, 4)
リストかタプルかを確認する ?
num_tuple? out Type:tuple
num_list? out Type:list
リストやタプルと同様に配列の一種だが、その数字が何なのかの説明が入れられる
ディクショナリは{}
リストは[]
タプルは()
で記述する
\\このようにインプットする
kyushu_pop_dict = {"Fukuoka":504, "Oita":120, "Kumamoto":182}
\\中身を確認
kyushu_pop_dict
out {'Fukuoka': 504, 'Oita': 120, 'Kumamoto': 182}
\\一部の要素を取り出すときは、インデックスではなく
kyushu_pop_dict["Oita"]
out 120
\\どのような要素があるのかを確認する
kyushu_pop_dict.keys()
out dict_keys(['Fukuoka', 'Oita', 'Kumamoto'])
\\値を確認する
kyushu_pop_dict.values()
out dict_values([504, 120, 182])
\\配列の値を追加する
kyushu_pop_dict.update({"Kagoshima":170, "Miyazaki":114, "Saga":85})
kyushu_pop_dict
out {'Fukuoka': 504, 'Oita': 120, 'Kumamoto': 182, 'Kagoshima': 170, 'Miyazaki': 114, 'Saga': 85}