python メモ
Pythonで処理を 100ms(0.1秒) 停滞させる方法
import time
time.sleep(0.1) # 100ms (0.1秒) 停止
配列(リスト)化されたオブジェクトの一部要素を使用して分岐処理を行う方法
if使用
products = [
{"name": "リンゴ", "category": "果物", "price": 150},
{"name": "バナナ", "category": "果物", "price": 100},
{"name": "牛乳", "category": "飲料", "price": 200},
{"name": "パン", "category": "食品", "price": 250},
]
for product in products:
if product["category"] == "果物":
print(f"{product['name']} は果物です。")
elif product["category"] == "飲料":
print(f"{product['name']} は飲み物です。")
else:
print(f"{product['name']} はその他の食品です。")
# 出力
# リンゴ は果物です。
# バナナ は果物です。
# 牛乳 は飲み物です。
# パン はその他の食品です。
dict使用
def fruit_action(product):
print(f"{product['name']} は果物です。")
def drink_action(product):
print(f"{product['name']} は飲み物です。")
def default_action(product):
print(f"{product['name']} はその他の食品です。")
# カテゴリごとの処理を辞書にマッピング
category_actions = {
"果物": fruit_action,
"飲料": drink_action
}
for product in products:
action = category_actions.get(product["category"], default_action)
action(product)
# 出力
# リンゴ は果物です。
# バナナ は果物です。
# 牛乳 は飲み物です。
# パン はその他の食品です。
CSVファイルを作成
import csv
products = [
{"name": "リンゴ", "category": "果物", "price": 150},
{"name": "バナナ", "category": "果物", "price": 100},
{"name": "牛乳", "category": "飲料", "price": 200},
{"name": "パン", "category": "食品", "price": 250},
]
# CSVファイルの保存パス
csv_filename = "products_flag.csv"
# CSVデータを作成
with open(csv_filename, mode="w", newline="", encoding="utf-8") as file:
writer = csv.writer(file)
# ヘッダー行を書き込む
writer.writerow(["name", "flag"])
# データ行を書き込む(リンゴ・バナナなら True、それ以外は False)
for product in products:
is_target = product["name"] in ["リンゴ", "バナナ"]
writer.writerow([product["name"], is_target])
print(f"{csv_filename} を作成しました。")
配列のオブジェクトを for
で回し、特定の要素を抽出して JSON 化し外部システムのAPI使用
import json
# 元データ
products = [
{"name": "リンゴ", "category": "果物", "price": 150},
{"name": "バナナ", "category": "果物", "price": 100},
{"name": "牛乳", "category": "飲料", "price": 200},
{"name": "パン", "category": "食品", "price": 250},
]
# 指定した要素(name と price のみ)を抽出
filtered_products = [{"name": p["name"], "price": p["price"]} for p in products]
# JSON データを作成
json_data = json.dumps({"products": filtered_products}, ensure_ascii=False)
# curl コマンドで使用するための JSON をエスケープ
escaped_json = json_data.replace('"', '\\"')
# curl コマンドを作成
api_url = "https://api.example.com/products"
curl_command = f'curl -X POST {api_url} -H "Content-Type: application/json" -d "{escaped_json}"'
print("生成された curl コマンド:")
print(curl_command)
# 出力されるcurlコマンド
# curl -X POST https://api.example.com/products -H "Content-Type: application/json" -d "{\"products\": [{\"name\": \"リンゴ\", \"price\": 150}, {\"name\": \"バナナ\", \"price\": 100}, {\"name\": \"牛乳\", \"price\": 200}, {\"name\": \"パン\", \"price\": 250}]}"
是非フォローしてください
最新の情報をお伝えします