はじめに
自分の備忘録用。
環境
- Python3.9
変数
変数について
命名規則
- 変数名、関数名
- スネークケース(例:my_name)
- クラス名
- パスカルケース(例:SampleClass)
変数宣言
Pythonの場合には利用する前に変数宣言は必要ない。
そのため、使いたいタイミングでいきなり代入する。
代入した値によって、変数から参照される値の型が動的に決まる。
文字列を代入した場合
value = "あいうえお"
type(value)
# 出力結果
<class 'str'>
数値を代入した場合
value = 10
type(value)
# 出力結果
<class 'int'>
文字列型(str)
value = "あいうえお"
type(value)
# 出力結果
<class 'str'>
プレイスホルダーを使ってフォーマットする
value = "{}です".format("田中")
print(value)
# 出力結果
田中です
リスト型(list)
value = ["apple", "orange", "grape"]
type(value)
# 出力結果
<class 'list'>
値の追加
value.append("lemon")
print(value)
# 出力結果
['apple', 'orange', 'grape', 'lemon']
リスト内包表記
value = [1, 2, 3, 4, 5]
print(value)
# 出力結果
[1, 2, 3, 4, 5]
new_value = [i * 2 for i in value]
print(new_value)
# 出力結果
[2, 4, 6, 8, 10]
日付
日付関係の処理について。
datetimeモジュールを使う。
現在日時の取得
import datetime
print(datetime.datetime.today())
# 出力結果
2022-05-03 21:34:00.460758
タイムゾーン指定の場合
import datetime
tzone = datetime.timezone(offset=datetime.timedelta(hours=9), name="Asia/Tokyo")
print(datetime.datetime.now(tzone))
# 出力結果
2022-05-03 21:47:05.935918+09:00
print(tzone)
# 出力結果
Asia/Tokyo
現在よりも〇〇時間経過後
import datetime
tzone = datetime.timezone(offset=datetime.timedelta(hours=9), name="Asia/Tokyo")
now = datetime.datetime.now(tzone)
print(now)
# 出力結果
2022-05-03 21:53:00.147739+09:00
# 30日後の日時
future = now + datetime.timedelta(days=30)
print(future)
# 出力結果
2022-06-02 21:53:00.147739+09:00
日時の比較
import datetime
tzone = datetime.timezone(offset=datetime.timedelta(hours=9), name="Asia/Tokyo")
now = datetime.datetime.now(tzone)
future = now + datetime.timedelta(days=30)
print(now < future)
# 出力結果
True
print(now > future)
# 出力結果
False
フォーマットして出力
import datetime
tzone = datetime.timezone(offset=datetime.timedelta(hours=9), name="Asia/Tokyo")
now = datetime.datetime.now(tzone)
print(now.strftime("%Y-%m-%d %H:%M:%S%z"))
# 出力結果
2022-05-03 21:53:00+0900