LoginSignup
18
27

More than 5 years have passed since last update.

Python基本文法まとめ

Last updated at Posted at 2017-11-02

はじめに

基本文法の勉強メモ。

Python 3

演算子

  • + - * / ... 四則演算
  • ** ... n乗(a**b はaのb乗)
  • // ... 切り捨て除算
  • % ... 除算の余り

ビット演算子

こんなのがあるらしい

~a            # ビット反転
a & b         # AND:論理積(aもbも1のビットが1)
a | b         # OR:論理和(aまたはbが1のビットが1)
a ^ b         # XOR:排他的論理和(aまたはbが1のビットが1)
a << b        # b ビット左シフト
a >> b        # b ビット右シフト

代入演算子

  • value += 5 ... value = value + 5 と同じ
  • value -= 5 ... value = value - 5 と同じ
  • value *= 5 ... value = value * 5 と同じ
  • value /= 5 ... value = value / 5 と同じ

  • value **= 2 ... value = value ** 2 と同じ

  • value //= 2 ... value = value // 2 と同じ

  • value %= 2 ... value = value % 2 と同じ

その他

a &= b        # a = a & b に同じ
a |= b        # a = a | b に同じ
a ^= b        # a = a ^ b に同じ
a <<= b       # a = a << b に同じ
a >>= b       # a = a >> b に同じ

コメントアウト

  • # ... 1行コメント
  • """""" ... 複数行コメント 複数行文字列 。コメントアウトに使えるが専用ではない

文字列

ただの文字列でも配列みたいな扱いができる

# その1
str = "Apples"
str[0]            # 'A'

# その2
"test"[2]        # 's'

# その3
ex = "Apples"
ex[:3]            # 'App'
ex[1:4]            # 'ppl'
ex[3:]            # 'les'

比較演算子

a == b           # a が b と等しい
a != b           # a が b と異なる
a < b            # a が b よりも小さい
a > b            # a が b よりも大きい
a <= b           # a が b 以下である
a >= b           # a が b 以上である
a <> b           # a が b と異なる
a is b           # a が b と等しい
a is not b       # a が b と異なる
a in b           # a が b に含まれる
a not in b       # a が b に含まれない

分岐

書き方は以下

if 条件 :
    処理
elif 条件:
    処理
else:
    処理

関数

書き方は以下

def 関数名(引数, ...):
    処理

呼び出しは 関数名(引数) のようにする

def ex(value):
    print(value)

ex("テスト")    # 「テスト」が表示される

モジュール

呼び出しの文法がいろいろある

# randomを読み込み
import random

# random.randintを読み込み
import random.randint

# random.randintを読み込み
from random import randint

# こういう書き方もできるらしい
from random import *

配列

list = ["a", "b", "c"]

追加

list = [1, 2, 3, 4]
list.append(5)        # 最後に要素が追加されて list = [1, 2, 3, 4, 5] になる

list = ["a", "c", "d"]
list.insert(1, "b")    # 2番目に値が追加されて list = ["a", "b", "c", "d"] になる

切り出し

list = [5, 6, 7, 8, 9]

slice = list[:2]        # slice = [5, 6]
slice = list[2:4]      # slice = [7, 8]
slice = list[1:]        # slice = [6, 7, 8, 9]

削除

# その1: 要素を指定
list = ["a", "b", "c", "d"]
list.remove("c")        # list = ["a", "b", "d"]

# その2: インデックスを指定
list = ["a", "b", "c", "d"]
list.pop(2)               # list = ["a", "b", "d"]

# その3: 末尾の要素
list = ["a", "b", "c", "d"]
list.pop()               # list = ["a", "b", "c"]

タプル

tuple1 = (1, "a", true)

繰り返し

for

list = [1, 2, 3, 4, 5]
for elements in list:
    print(elements)

tuple = (1, 2, 3, 4, 5)
for elements in tuple:
    print(elements)

while( break も使える)

counter = 0
while counter < 5:
    print("something")
    counter += 1

辞書

連想配列と同じ。
key: value の形式。

states = {42: "Washington", 50: "Hawaii", 1: "Delaware"}
print(states[42])    # Washington
print(states[50])    # Hawaii
print(states[1])     # Delaware

# 削除
del states[42]    # 42: "Washington" を削除

try~except

ex = input("Guess what my favorite integer is. :")

try:
    if int(ex) == 7:
        print("That is correct, 7 is my favorite integer.")
    else:
        print("That is not my favorite integer.")
except:
    print("Please run the program again and enter an integer.")

おわりに

全部を試してはいないのでミスがあるかも(すみません)。
個人的には、 def: とか if: とかのコロンを忘れそう。

18
27
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
18
27