Python学習の実践的な活用法

実務で活かすPython学習のススメ

学習契機と環境構築

業務でのデータ処理を効率化する手段としてPythonに注目しました。特定のリモートストレージに保存された200件のデータ検証を手作業で行う代わりに、自動化ツールとしてPythonを選択しました。開発環境はHomebrewでPython3をインストール後、PyCharmを使用してコーディング環境を構築。以下の初期設定確認コードを実行して動作検証を行います:

#!/usr/bin/env python3

print("Sample Output")
print("Python version check complete")

業務課題への適用事例

課題1:リモートデータ検証
運用管理ツール経由でしかアクセスできないストレージから200件のデータを検証する必要がありました。HTTPリクエストを発行してJSONレスポンスを解析するスクリプトを作成:

#!/usr/bin/env python3

import requests
import json

# コマンドリスト
commands = [
    'hget storage:key1 value',
    'hget storage:key2 value'
]

tool_url = "https://admin-tool.example.com/api"
headers = {
    "Authorization": "Bearer your_token",
    "Content-Type": "application/json"
}

success_count = 0
total_count = 0

for cmd in commands:
    total_count += 1
    payload = {
        "target": "cluster-A",
        "operation": cmd
    }
    response = requests.post(tool_url, headers=headers, data=json.dumps(payload))
    result = response.json()
    print(f"Processing {total_count}th command")
    
    if result.get("status") == "active":
        success_count += 1

print(f"Total: {total_count}, Success: {success_count}")

課題2:ログファイル処理
30MBのログファイルから特定データ抽出を必要とする場面に遭遇。以下の手順で処理:

  1. ログ行のJSON部分を解析
  2. タイムスタンプを抽出
  3. SQL形式の出力ファイルを生成
#!/usr/bin/env python3

import json

input_path = "/path/to/logs/input.log"
output_path = "/path/to/logs/output.csv"

with open(input_path, 'r') as infile:
    lines = infile.readlines()

with open(output_path, 'w') as outfile:
    for idx, line in enumerate(lines):
        cleaned_line = line.strip()
        json_end = cleaned_line.find('}') + 1
        json_str = cleaned_line[:json_end]
        timestamp = cleaned_line[json_end:].strip()
        
        try:
            data = json.loads(json_str)
            outfile.write(f"{data['id']},{timestamp}\n")
            print(f"Processed {idx+1} records")
        except json.JSONDecodeError:
            print(f"JSON parse error at line {idx+1}")

学習姿勢と実践的アプローチ

プログラミング学習において重要なのは「知識と問題の相互補完」。新しい技術を学ぶ際は、既存の課題に適用できるポイントを意識する姿勢が重要です。Pythonの場合は豊富なライブラリと簡潔な構文が特長で、スクリプト作成による業務効率化に最適な言語です。

タグ: Python redis HTTP JSON データ処理

6月13日 23:56 投稿