Python基本文法
pythonの基本文法をまとめる。
■コメント
行頭に#
■変数の型
・数字
a=5
・文字
a="n" ・・・ 'n' でもOK
・リスト
a=[1, 3, 5]
・タプル
a=(1, 3, 5)
・辞書
a={'key1', 'value1', 'key2': 'value2'}
・ブール
a=True ・・・ 先頭は大文字で。
a=False ・・・ 先頭は大文字で。
・未定義
a = None
■行末のセミコロン
a=123 でも
a=123; でも、どちらでもOK。
■標準入出力
・a = int(input('何個必要ですか :')) ※入力された文字をint()で数字変換。
・print(a * 2)
■文字列操作
a="abcdefg"
a[3] ・・・ 'd'
a[3:5] ・・・ 'de' a[3]からa[5-1]まで。
a[3:] ・・・ 'defg'
a[:3] ・・・ 'abc'
a[-1] ・・・ 'g'
len(a) ・・・ 7文字 len関数
a.split('d') ・・・ ['abc', 'efg']
':'.join(a) ・・・ 'a:b:c:d:e:f:g'
':'.join(['aaa', 'bbb']) ・・・ 'aaa:bbb'
''.join(['aaa', 'bbb']) ・・・ 'aaabbb'
a.replace('bc','xx') ・・・ 'axxdefg'
'xxx{}{}yyy'.format(123,"abc") ・・・ 'xxx123abcyyy'
'こん' + 'にちは' ・・・ 'こんにちは'
a.startswith('a') ・・・ aで始まっていれば True
a.endswith('a') ・・・ aで終わっていれば True
a.find('s') ・・・ 's' の出現位置
a.count('.') ・・・ '.' の出現回数
a.isalnum() ・・・ すべて英数字ならTrue
a.upper() ・・・ 英小文字を英大文字へ
a.lower() ・・・ 英大文字を英小文字へ
■数字
a=10 ・・・ 整数
a=10.56 ・・・ 小数
a=10+20 ・・・ 加
a=20-10 ・・・ 減
a=20*30 ・・・ 乗
a=30/15 ・・・ 除
a=2**6 ・・・ べき乗(2の6乗=64)
a =6%4 ・・・ 剰余(あまり2)
import random
x = random.randint(1, 10)
■制御構造
if 条件式 :
処理1
elif 条件2 :
処理2
else :
処理3
条件 and 条件
条件 or 条件
if a == 0:
if a==True: ・・・ if a: でも良い
if (a>3):
if (a != 3):
if a%3 == 1: ・・・ 剰余
for x in range(繰り返し回数)
処理
while 条件式 :
繰り返す処理
■リスト操作 ・・・ [ ]で括る。
a = [1, 3, 5, 7, 9]
max(a) ・・・ 最大の要素
min(a) ・・・ 最小の要素
a.pop() ・・・ 9が取り出される。a = [1, 3, 5, 7] になる
a.append(10) ・・ リスト末尾に追加。a = [1, 3, 5, 7, 10] になる
a.len() ・・・ リストの要素数 5
b = ['a', 'b', 'c']
a.extend(b) ・・・ aは、[1, 3, 5, 7, 10, 'a', 'b', 'c'] になる a += b でも可
a = [1, 3, 5]
a.insert(2, 4) ・・・ 2番目の要素に4を挿入。aは [1, 3, 4, 5] になる
del a[2] ・・・ 2番目の要素を削除。aは [1, 3, 5] になる
a = [3, 1, 3, 5]
a.remove(3) ・・・ 最初に見つかった3という値を削除する。aは [1, 3, 5] になる
a.count(3) ・・・ 3という要素が何個含まれるか。2
a.sort() ・・・ 昇順にソートする。[1, 3, 3, 5]になる
a.sort(reverse=True) ・・・ 降順にソートする。[5, 3, 3, 1]になる
a = [1, 3, 5]
a.index(5) ・・・ 最初に見つかった位置。5
a in 3 ・・・ aのリスト中に3含む場合はTrue
a=[1,3,5] ; b=[10,30,50] ; c=[100,300,500]
x,y,z = zip(a,b,c) ・・・ zip()で行・列変換。結果はタプルになる。
xは(1,10,100) yは(3,30,300) zは(5,50,500)
TUPLE=(1,3,5)
v=list(TUPLE) ・・・ list(引数)で引数(この例ではタプル)をリストに変換。[1, 3, 5]
keys=['a', 'b', 'c']
values=[1, 3, 5]
dict(zip(keys, values)) ・・・ {'a': 1, 'b': 3, 'c': 5}
■タプル ・・・ ( ) で括る。
Read Onlyの配列。定数として使うことが多い。慣例的に大文字で書く。
A = (1, 3,5)
A.extend(7) ・・・ エラーになる。
■辞書 ・・・ { } で括る。連想配列みたいなもの。
a = {'a':1, 'b':2, 'c':3]
a['b'] = 5 ・・・ 辞書のキー値を書き換え。a = {'a':1, 'b':5, 'c':3]
a['d'] = 4 ・・・ 辞書に追加。a = {'a':1, 'b':5, 'c':3, 'd':4}
for key in a:
print(key, end="/") ・・・ a/b/c/d
for val in a.values():
print(val, end="/") ・・・ 1/5/3/4
for key, val in a.items():
print(key, val, sep="=", end="/") ・・・ a=1/b=5/c=3/d=4/
a = ['ab', 'cd']
dict(a) ・・・ {'a': 'b', 'c': 'd'} リストから辞書を作成
a = [['a', 'b'], ['c', 'd']]
dict(a) ・・・ {'a': 'b', 'c': 'd'} リストから辞書を作成
x={'a':'b', 'c':'d'}
y={'e': 'f', 'g': 'h'}
x.update(y) ・・ 辞書xに辞書yを連結。xは{'a': 'b', 'c': 'd', 'e': 'f', 'g': 'h'}になる
z = y ・・・ yオブジェクトの参照を代入。同一オブジェクトを2つの変数が指す
z = y.copy() ・・・ yの値のコピーを生成し代入。zとyは別オブジェクトを指す
del y['e'] ・・・ 辞書から該当する要素を削除
y.clear() ・・・ 辞書を初期化
---------------------------------------
■ITとことんのトップページ
┗■Pythonのトップページ
┗■本ページ