読者です 読者をやめる 読者になる 読者になる

sagantafのブログ

なんでも自分の思ったこと、経験したことを書いて生きます。

Python3 まとめ(1) 〜数値・変数〜

Python3を習得中なので、まとめておく。
 
まずは、数値と変数について。
 
情報源:
 UDEMYの講座(A Gentle Introduction to Python Programming)
 書籍(入門 Python3)
 
 

数値

+, -, *, / :四則演算(足し算、引き算、掛け算、割り算)
//:割り算(切り捨て)
>>> 1+1-1
1
>>> 2*3
6
>>> 15/2
7.5
>>> 15//2
7
 
%:剰余(割り算の余り)
**:指数 
>>> 15%2
1
>>> 2**4
16
 
ちなみに…
divmod関数を使うことで、商と余りを同時に求められる。
>>> divmod(9,5)
(1, 4)
>>> divmod     ( 9 , 5 )
(1, 4)
そしてけっこう空白に寛容。
 
数字の前に0を置くとエラーになる。
>>> 05 + 2
  File "<stdin>", line 1
    05 + 2
     ^
SyntaxError: invalid token
>>> 5 + 2
7
 
スペースは必須ではない。空白がなくても、いくらあっても問題ない。
>>> 1+2  +    3
6
 
もっと省エネな書き方として、計算したい演算子と = を並べるだけという方法がある。
>>> x = 0
>>> x = x + 2
>>> x
2
>>> x = 0
>>> x += 2
>>> x
2
 
この表現方法は、どんな演算子にも利用可能。
>>> y = 10
>>> y -= 5
>>> y
5
>>> a = 10
>>> a //= 2
>>> a
5
>>> a %= 2
>>> a
1
 
ただし、演算子と = に空白を設けるとエラーになるので注意。
>>> x + = 3
  File "<stdin>", line 1
    x + = 3
        ^
SyntaxError: invalid syntax
 
 
 
 

変数

変数の宣言は = を使う。
型は自動的に判断される。
>>> num = 10
>>> num
10
>>> type(num)
<class 'int'>
>>>
>>> var = "hello"
>>> type(var)
<class 'str'>
>>> var
'hello'
 
 
また、変数は上書きされる。
>>> num
10
>>> num = 20
>>> num
20
 
 
宣言していない変数を呼ぶと当然ながらエラーになる。
>>> bum
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'bum' is not defined
 
数値から始まる変数や、Pythonで予約されている言語を利用した変数は宣言できない。
>>> x1 = 1
>>> x_1 = 2
>>> 1x = 2
  File "<stdin>", line 1
    1x = 2
     ^
SyntaxError: invalid syntax
>>>
>>> break = 3
  File "<stdin>", line 1
    break = 3
          ^
SyntaxError: invalid syntax
>>> 
>>> bread = 3
>>> bread
3
breakは予約語だからエラーになるが、breadは予約されていないので問題なく宣言できる。
 
 

まとめ

 

 数値 
演算子は下記
 +, -, *, / :四則演算
 //:割り算(切り捨て)
 %:剰余(割り算の余り)
 **:指数
 
・数字の前に0を置くとエラーになる。
・数式中のスペースは必須ではない。空白がなくても、いくらあっても問題ない。
・算術演算子の効率的な書き方
 >>> x += 2
 >>> y -= 5
 >>> a //= 2
 >>> a %= 2
・divmod(x,y)で、x÷y の商と余りを同時に求められる。
 
 変数 
・変数の宣言は = を使う。
・型は自動的に判断される。
・変数は2回同じものを宣言すると上書きされる。
・宣言していない変数を呼ぶとエラーになる。
・数値から始まる変数や、Pythonで予約されている言語を利用した変数は宣言できない。