Skip to main content

Formats date string as 'yyyy-mm-dd' and manipulates dates.

Project description

# fdate

Formats date string as 'yyyy-mm-dd' and manipulates date strings.

Installation
---------------

Use one of the following method:

* pip install
```bash
pip --install fdate
pip --install fdate --upgrade
```
* clone repository and install with:
```
python setup.py install
```
Usage
-------

* Initializations

From a string of format 'yyyy-mm-dd', where the separator '-' can be any non-digital character.
```python
>>> from fdate import *
>>> fd = Fdate('2018/4/7')
>>> fd
'2018-04-07'
>>> fd = Fdate('2018-4-7')
>>> fd
'2018-04-07'
```
From exactly 8-length digits or Fdate object.
```python
>>> fd = Fdate('20180407')
>>> fd
'2018-04-07'
>>> fe = Fdate(fd)
>>> fe
'2018-04-07'
```

From unix timestamp, with default time unit: second.
```python
>>> fd = Fdate().from_timestamp(1523030400)
>>> fd
'2018-04-07'
```

In case time unit is not seconde, say minisecond, set `unit=1000`.
```python
>>> fd = Fdate().from_timestamp(1523030400000, unit=1000)
>>> fd
'2018-04-07'
```

From function `today(shift=0)`
```python
>>> fd = today() # today
>>> fd = today(-1) # yesterday
>>> fd = today(1) # tomorrow
```

* Properties
```python
>>> fd = Fdate('20180407')
>>> fd.year, fd. month, fd.day
(2018, 4, 7)
>>> fd.rank # 2018-04-07 is the 97th day of the year.
97
>>> fd.is_weekend
True
>>> fd.is_workload
False
>>> fd.is_leap_year
False
>>> fd.is_first_day(of='M') # first day of the ... ? 'M' -- month (default), 'Y' -- year
False
>>> Fdate('2018-3-31').is_last_day()
True
>>> fd.to_timestamp() # to unix timestamp
1523030400
```

* Calculations

```python
>>> fd = Fdate('20180407')
>>> fd + 1
'2018-04-08'
>>> fd -= 1
>>> fd
'2018-04-06'
>>> fd - '2018.3.6'
31
>>> fd - '2018/5/6'
-30
>>> fd > '2018-3-6'
True
>>> fd == '2018.4.6'
True
```

* Iterations

```python
>>> [x for x in drange('2018-03-30', '2018-04-03')]
['2018-03-30', '2018-03-31', '2018-04-01', '2018-04-02', '2018-04-03']
>>> [x for x in drange('2018-04-03', '2018-03-30')]
['2018-04-03', '2018-04-02', '2018-04-01', '2018-03-31', '2018-03-30']
```

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fdate-0.1.3.tar.gz (4.0 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page