コンテンツにスキップ

未翻訳のページ

このページはまだ日本語に翻訳されていないため、英語の原文を表示しています。 翻訳に協力する

pstats Module

The pstats module analyzes profiler output from cProfile or profile modules, providing tools for sorting and filtering statistics.

Complexity Reference

Operation Time Space Notes
Stats() initialization O(n) O(n) n = profile entries
sort_stats() O(n log n) O(n) Sorting profile entries; may require O(n) space
print_stats() O(k) O(k) k = functions printed

Analyzing Profile Data

Loading and Sorting

import pstats
import cProfile

# Profile and save
cProfile.run('expensive_function()', 'profile_output')

# Load stats - O(n)
stats = pstats.Stats('profile_output')

# Sort by cumulative time - O(n log n)
stats.sort_stats('cumulative')

# Print top 10 - O(k)
stats.print_stats(10)

Multiple Sorting

import pstats

# Load - O(n)
stats = pstats.Stats('profile_output')

# Sort by multiple keys - O(n log n)
stats.sort_stats('time', 'cumulative')

# Strip directory paths - O(n)
stats.strip_dirs()

# Print specific functions - O(k)
stats.print_stats('.*function_name.*')