New submission from Lars Nordin <lars.nor...@gmail.com>:

The datetime.strptime works well enough for me it is just slow.

I recently added a comparison to a log parsing script to skip log lines earlier 
than a set date. After doing so my script ran much slower.
I am processing 4,784,212 log lines in 1,746 files.

Using Linux "time", the measured run time is:
real    5m12.884s
user    4m54.330s
sys     0m2.344s

Altering the script to cache the datetime object if the date string is the 
same, reduces the run time to: 
real    1m3.816s
user    0m49.635s
sys     0m1.696s

# --- code snippet ---
# start_dt calculated at script start
...
day_dt = datetime.datetime.strptime(day_str, "%Y-%m-%d")
if day_dt < start_dt:
...


$ python
import platform
print 'Version      :', platform.python_version()
print 'Version tuple:', platform.python_version_tuple()
print 'Compiler     :', platform.python_compiler()
print 'Build        :', platform.python_build()

Version      : 2.7.2+
Version tuple: ('2', '7', '2+')
Compiler     : GCC 4.6.1
Build        : ('default', 'Oct  4 2011 20:03:08')

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 11.10
Release:        11.10
Codename:       oneiric

----------
components: None
messages: 165256
nosy: Lars.Nordin
priority: normal
severity: normal
status: open
title: datetime.strptime slow
type: performance
versions: Python 2.7

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue15328>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to