Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

Python基本文法まとめ

More than 3 years have passed since last update.

はじめに

基本文法の勉強メモ。

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: とかのコロンを忘れそう。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away