Imports all the Wordpress history into jekyll.

It kinda seems to work!
This commit is contained in:
julien lengrand-lambert
2014-02-09 01:14:08 +01:00
parent d403fe40b5
commit 2e27933441
77 changed files with 7366 additions and 0 deletions

View File

@@ -0,0 +1,64 @@
---
layout: post
status: publish
published: true
title: Profiling a Python Script
author: Julien Lengrand-Lambert
author_login: jlengrand
author_email: julien@lengrand.fr
author_url: http://www.lengrand.fr
wordpress_id: 546
wordpress_url: http://www.lengrand.fr/?p=546
date: 2012-02-29 11:43:08.000000000 +01:00
categories:
- Python
tags:
- project euler
- profile
- profiler
- module
- stack overflow
comments: []
---
Here are some simple ways to profile Python scripts.I heavily use this to check my <strong><a title="PE solutions" href="https://github.com/jlengrand/project_euler" target="_blank">Project Euler solutions</a></strong>.
<h1></h1>
<h1><strong>SOLUTION 1:</strong></h1>
The main common option would be to use the <a title="profile" href="http://docs.python.org/library/profile.html?highlight=profile#cProfile" target="_blank"><strong>profile</strong> </a>(or <strong><a title="cprofile" href="http://docs.python.org/library/profile.html?highlight=profile#cProfile" target="_blank">cprofile</a></strong>) module.There are two different ways of using it :
<ul>
<li>As a module, by directly running</li>
</ul>
<div>[python]
python -m cProfile script.py
[/python]
</div>
<div></div>
<div>
<ul>
<li>In your code, by importing the utilities</li>
</ul>
<div>[python]
import cProfile
cProfile.run('function()') # in your __main__
[/python]
<em>Bonus : You can use several options for sorting results using the -s switch (cumulative/name/time/file sorting are available).</em>
<h1><strong>SOLUTION 2:</strong></h1>
If you want to avoid using a command line, or you don't have the profile module installed; here os another possibility. There is also the <strong><a title="timeit module" href="http://docs.python.org/library/timeit.html" target="_blank">timeit </a></strong>module available.
[python]
import timeit
t1 = timeit.Timer(&quot;function()&quot;, &quot;from __main__ import function&quot;)
print t1.timeit(1)
[/python]
I use this option on Eclipse because I didn't want to install the profile module on Windows.
This is however less clear, and way less detailed while still useful :).
Choose you profiler option and get on <a title="PE" href="http://projecteuler.net/" target="_blank"><strong>Project Euler</strong> </a>!
[<a title="SO" href="http://stackoverflow.com/questions/582336/how-can-you-profile-a-python-script" target="_blank">Stack Overflow</a>]
</div>
</div>