Copyright (c) 2014 Will Roberts <wildwilhelm@gmail.com>
Licensed under the MIT License (see source file timeparse.py for details).
A small Python library to parse various kinds of time expressions, inspired by this StackOverflow question.
The single function timeparse defined in the module parses time expressions like the following:
32m
2h32m
3d2h32m
1w3d2h32m
1w 3d 2h 32m
1 w 3 d 2 h 32 m
4:13
4:13:02
4:13:02.266
2:04:13:02.266
2 days, 4:13:02 (uptime format)
2 days, 4:13:02.266
5hr34m56s
5 hours, 34 minutes, 56 seconds
5 hrs, 34 mins, 56 secs
2 days, 5 hours, 34 minutes, 56 seconds
1.2 m
1.2 min
1.2 mins
1.2 minute
1.2 minutes
172 hours
172 hr
172 h
172 hrs
172 hour
1.24 days
5 d
5 day
5 days
5.6 wk
5.6 week
5.6 weeks
It returns the time as a number of seconds (an integer value if possible, otherwise a floating-point number):
>>> from pytimeparse.timeparse import timeparse
>>> timeparse('1.2 minutes')
72
A number of seconds can be converted back into a string using the datetime module in the standard library, as noted in this other StackOverflow question:
>>> from pytimeparse.timeparse import timeparse
>>> import datetime
>>> timeparse('1 day, 14:20:16')
138016
>>> str(datetime.timedelta(seconds=138016))
'1 day, 14:20:16'
Future work
Give the user more flexibility over which characters to use as separators between fields in a time expression (e.g., + might be useful).
Internationalisation?
Metadata
Release files for pytimeparse 1.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pytimeparse-1.1.0.tar.gz | 5.2 kB | Details |
Release files / pytimeparse-1.1.0.tar.gz
| Download URL | pytimeparse-1.1.0.tar.gz |
|---|---|
| Size | 5.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f8ed5f8cf6e4ce4c2d55da4d35a802d6ab0de2557124a518a92afcd1910b1474
|
|
BLAKE2b-256 checksum How to use checksums |
c0e77d1ae685cb04eb17a3f56c6448d2f61ac0dd584a90c53b7364e92779650f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |