Python package for nepali processes
Project description
Nepali
Python package for processing every nepali stuffs
Requirements
Python >= 3
Installation
pip install nepali
Features
- Nepali datetime support
- Parse nepali datetime
- Nepali Characters (Months, Days, etc)
- Number to nepali numbers and nepali numbers to english.
nepalidate
Represents nepali date, converts English date to nepali date and nepali date to english date
from nepali.datetime import nepalidate
Creating new object
# object with current date np_date = nepalidate(year, month, day) # object with today's date np_date = nepalidate.today() # parse date np_date = nepalidate.strptime('2078-01-12', format='%Y-%m-%d')
Object from python's datetime.date
import datetime date = datetime.date.today() np_date = nepalidate.from_date(date)
Get python's datetime.date object
np_date.to_date()
Get python's datetime.datetime object
np_date.to_datetime()
nepalidatetime
Represents nepali date time
from nepali.datetime import nepalidatetime
Creating new object
# object with specific datetime np_datetime = nepalidatetime(year, month, day[, hour[, minute[, second]]]) # arguments must be nepali # object with current datetime np_datetime = nepalidatetime.now() # parse datetime np_datetime = nepalidatetime.strptime('2078-01-12 13:12', format='%Y-%m-%d %H:%M')
Object from python's datetime.datetime
import datetime dt = datetime.datetime.now() np_datetime = nepalidatetime.from_datetime(dt)
Get nepalidate object
np_datetime.date()
Get python's datetime.time object
np_datetime.time()
Get python's datetime.datetime object
np_datetime.to_datetime()
Date String Format
Equivalent to python's datetime strftime format
npDateTime = nepalidatetime.now() print(npDateTime.strftime('%a %A %w %d %b %B %m %y %Y %H %I %p %M %S')) print(npDateTime.strftime_en('%a %A %w %d %b %B %m %y %Y %H %I %p %M %S'))
बुध बुधबार ३ २६ मंसिर मंसिर ०८ ७५ २०७५ ११ ११ शुभप्रभात ०६ १३
Wed Wednesday 3 26 Mangsir Mangsir 08 75 2075 11 11 AM 06 13
timedelta operations
ndt = nepalidatetime.now() print(ndt + datetime.timedelta(hours=5)) print(ndt - datetime.timedelta(hours=5))
parse
Parses datetime from a string.
parse uses very high cost method, so avoid this as much as you can.
from nepali.datetime import parser as nepalidatetime_parser ndt = nepalidatetime_parser.parse('29 Jestha, 2078, 1:30 PM')
nepalihumanize
nepalihumanize converts nepalidatetime to nepali human readable form
from nepali.datetime import nepalihumanize
Creating new object
# object from nepali datetime ndt = nepalidatetime.now() humanize_str = nepalihumanize(ndt) # object from python datetime dt = datetime.datetime.now() humanize_str = nepalihumanize(dt)
Humanize with threshold
returns date in nepali characters if more than threshold(in seconds) else returns humanize form
humanize_str = nepalihumanize(ndt, threshold=60) # 60 seconds # custom format after threshold humanize_str = nepalihumanize(ndt, threshold=60, format='%Y-%m-%d') # 60 seconds
For Django Template
Add 'nepali'
to your INSTALLED_APPS
setting.
INSTALLED_APPS = [ ... 'nepali', ... ]
IN your Template
{% load nepalidatetime %}
{% nepalinow %}
{% nepalinow '%Y-%m-%d' %}
{{ datetimeobj|nepalidate:"%Y-%m-%d" }} {{ datetimeobj|nepalidate_en:"%Y-%m-%d" }}
{{ datetimeobj|nepalihumanize }}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.