Pythonでは文字列や関数など、全てのものがオブジェクトとして扱われます。 ちなみに、Pythonでは「オブジェクト」を「属性やメソッドを持っている(持たなくてもOK)もの」という結構アバウトな定義となっています。 とはいえ、そんな中でもPython内部ではデータ型を認識しています。
リテラルや変数のデータ型はtype()関数で調べることが可能です。
[paso ~] python3 Python 3.5.2 (default, Jun 1 2016, 10:00:00) [GCC 5.4.0 20160609] on linux Type "help", "copyright", "credits" or "license" for more information. >>> type(True) <class 'bool'> >>> type(False) <class 'bool'> >>> 1 > 0 True
数値型の演算子は以下のサンプルをご覧ください。
>>> # 小数点なしは整数 ... type(10) <class 'int'> >>> # 小数点ありは小数 ... type(10.0) <class 'float'> >>> # 四則演算 ... 10 + 5 15 >>> 10 - 5 5 >>> 10 * 5 50 >>> 10 / 5 2.0 >>> int(10 / 5) 2 >>> # floor(1番近い小さい数字) ... 10 // 3 3 >>> -10 // 3 -4 >>> # べき乗(n乗) ... 2 ** 5 >>> # 変数に代入 ... num = 5 >>> num 5 >>> # 2つ同時に代入 ... num1, num2 = 10, 11 >>> num1, num2 (10, 11)
文字列はシングルorダブルコーテーションで囲まれたものになります。 +,*といった演算子も使えます。
>>> # 文字列 ...type('aiueo') <class 'str'> >>>type("aiueo") <class 'str'> >>> # エスケープシーケンス ...print("これはタブ\t。ここで改行。\n特殊文字はバックスラッシュをつけエスケープ\\") これはタブ。ここで改行。 特殊文字はバックスラッシュをつけエスケープ\ >>> # 文字列の前にrをつけると全エスケープ ...print(r"これはタブ\t。ここで改行。\n特殊文字はバックスラッシュをつけエスケープ\\") これはタブ\t。ここで改行。\n特殊文字はバックスラッシュをつけエスケープ\\ >>>a = "リテラルは" "連続可能" "。" >>>print(a) リテラルは連続可能。 >>>a = a + "変数に連結する場合は+演算子。" >>>print(a) リテラルは連続可能。変数に連結する場合は+演算子。 >>>print("5回繰り返し。" * 5) 5回繰り返し。5回繰り返し。5回繰り返し。5回繰り返し。5回繰り返し。
文字列は配列のように扱うことができ、切り取り抽出ができます。
>>>str = "pasokuma" >>>str[0] 'p' >>>str[1] 'a' >>>str[2] 's' >>>str[-1] # マイナスは末尾から 'a' >>>str[-2] 'm' >>># 範囲指定も可能で書式は 変数名[開始位置:終了位置+1] となります。 ...str[0:3] 'pas' >>>str[1:3] 'as' >>>str[:4] 'paso' >>>str[4:] 'kuma' >>>len(str) #文字数はlen関数で取得可 8
COPYRIGHT © 2008 Deepnet Inc. ALL RIGHTS RESERVED.