SlideShare a Scribd company logo
1 of 15
http://www.skillbrew.com
/SkillbrewTalent brewed by the
industry itself
Datetime module
Pavan Verma
@YinYangPavan
1
Founder, P3 InfoTech Solutions Pvt. Ltd.
Python Programming Essentials
© SkillBrew http://skillbrew.com
Introduction to datetime module
2
The datetime module supplies classes for
manipulating dates and times
Key classes in datetime module
Date Time Datetime Timedelta tzinfo
© SkillBrew http://skillbrew.com
Types of datetime objects
Date and Time
objects
Naive
objects
Aware
objects
3
Naive objects are not
aware of time zones and
day-light savings but they
are pretty easy to
understand
An aware object has
sufficient knowledge of
time zones and day-light
savings
© SkillBrew http://skillbrew.com
Note
4
All examples in these slides are using naive objects
© SkillBrew http://skillbrew.com
Date objects
5
from datetime import date
d = date(2013, 8, 22)
print(d.year)
print(d.month)
print(d.day)
print(d.strftime("%Y %m %d"))
Output:
2013
8
22
2013 08 22
© SkillBrew http://skillbrew.com
Date objects (2)
6
>>> from datetime import date
>>> date.today()
datetime.date(2013, 10, 21)
© SkillBrew http://skillbrew.com
Time objects
7
from datetime import time
t = time(2, 30, 45)
print(t.hour)
print(t.minute)
print(t.second)
print(t.strftime("%H:%M:%S"))
Output:
2
30
45
02:30:45
© SkillBrew http://skillbrew.com
DateTime objects
8
from datetime import datetime
dt = datetime(2013, 8, 21, 2, 30, 45)
print(dt.hour)
print(dt.minute)
print(dt.second)
print(dt.strftime("%m-%d-%Y %H:%M:%S"))
Output:
2
30
45
08-21-2013
02:30:45
© SkillBrew http://skillbrew.com
Manipulating dates
9
from datetime import datetime, timedelta
dt = datetime(2013, 8, 21, 2, 30, 45)
print(dt.strftime("%m-%d-%Y %H:%M:%S"))
Output:
08-21-2013 02:30:45
© SkillBrew http://skillbrew.com
Manipulating dates (2)
10
from datetime import datetime, timedelta
dt = datetime(2013, 8, 21, 2, 30, 45)
# get datetime after 5 days
add_dt = dt + timedelta(days=5)
print(add_dt.strftime("%m-%d-%Y %H:%M:%S"))
Output:
08-26-2013 02:30:45
© SkillBrew http://skillbrew.com
Manipulating dates (3)
11
from datetime import datetime, timedelta
dt = datetime(2013, 8, 21, 2, 30, 45)
# get datetime after 5 days
add_dt = dt + timedelta(days=5)
# get datetime 2 days in past
sub_dt = dt - timedelta(days=2)
print(sub_dt.strftime("%m-%d-%Y %H:%M:%S"))
Output:
08-19-2013 02:30:45
© SkillBrew http://skillbrew.com
Manipulating dates (4)
12
from datetime import datetime, timedelta
dt = datetime(2013, 8, 21, 2, 30, 45)
# get datetime after 5 days
add_dt = dt + timedelta(days=5)
# get datetime 2 days in past
sub_dt = dt - timedelta(days=2)
# comparison
print add_dt > sub_dt
Output:
True
© SkillBrew http://skillbrew.com
Manipulating dates (5)
13
from datetime import datetime, timedelta
dt = datetime(2013, 8, 21, 2, 30, 45)
# get datetime after 5 days
add_dt = dt + timedelta(days=5)
# get datetime 2 days in past
sub_dt = dt - timedelta(days=2)
# comparison
add_dt > sub_dt
# subtract
print add_dt - sub_dt
Output:
7 days, 0:00:00
© SkillBrew http://skillbrew.com
Summary
 Introduction to datetime module
 Types of datetime objects
 Date objects
 Time objects
 Datetime objects
 Manipulating Dates
14
© SkillBrew http://skillbrew.com
Resources
 Datetime objects blog post
http://buddylindsey.com/python-date-and-datetime-
objects-getting-to-know-them/
 http://docs.python.org/2/library/datetime.html
15

More Related Content

What's hot

Programming in Python
Programming in Python Programming in Python
Programming in Python Tiji Thomas
 
List,tuple,dictionary
List,tuple,dictionaryList,tuple,dictionary
List,tuple,dictionarynitamhaske
 
Regular expression in javascript
Regular expression in javascriptRegular expression in javascript
Regular expression in javascriptToan Nguyen
 
Python Functions Tutorial | Working With Functions In Python | Python Trainin...
Python Functions Tutorial | Working With Functions In Python | Python Trainin...Python Functions Tutorial | Working With Functions In Python | Python Trainin...
Python Functions Tutorial | Working With Functions In Python | Python Trainin...Edureka!
 
Python strings presentation
Python strings presentationPython strings presentation
Python strings presentationVedaGayathri1
 
Python Programming Essentials - M25 - os and sys modules
Python Programming Essentials - M25 - os and sys modulesPython Programming Essentials - M25 - os and sys modules
Python Programming Essentials - M25 - os and sys modulesP3 InfoTech Solutions Pvt. Ltd.
 
06. operator overloading
06. operator overloading06. operator overloading
06. operator overloadingHaresh Jaiswal
 

What's hot (20)

Strings in Java
Strings in JavaStrings in Java
Strings in Java
 
Python programming : Classes objects
Python programming : Classes objectsPython programming : Classes objects
Python programming : Classes objects
 
String in java
String in javaString in java
String in java
 
Programming in Python
Programming in Python Programming in Python
Programming in Python
 
List,tuple,dictionary
List,tuple,dictionaryList,tuple,dictionary
List,tuple,dictionary
 
Python Programming Essentials - M24 - math module
Python Programming Essentials - M24 - math modulePython Programming Essentials - M24 - math module
Python Programming Essentials - M24 - math module
 
Java constructors
Java constructorsJava constructors
Java constructors
 
9 python data structure-2
9 python data structure-29 python data structure-2
9 python data structure-2
 
Python Modules
Python ModulesPython Modules
Python Modules
 
Python programming : Strings
Python programming : StringsPython programming : Strings
Python programming : Strings
 
Regular expression in javascript
Regular expression in javascriptRegular expression in javascript
Regular expression in javascript
 
Templates in c++
Templates in c++Templates in c++
Templates in c++
 
Python Functions Tutorial | Working With Functions In Python | Python Trainin...
Python Functions Tutorial | Working With Functions In Python | Python Trainin...Python Functions Tutorial | Working With Functions In Python | Python Trainin...
Python Functions Tutorial | Working With Functions In Python | Python Trainin...
 
Java String
Java String Java String
Java String
 
Python strings presentation
Python strings presentationPython strings presentation
Python strings presentation
 
Python programming : List and tuples
Python programming : List and tuplesPython programming : List and tuples
Python programming : List and tuples
 
Java swing
Java swingJava swing
Java swing
 
Python Programming Essentials - M25 - os and sys modules
Python Programming Essentials - M25 - os and sys modulesPython Programming Essentials - M25 - os and sys modules
Python Programming Essentials - M25 - os and sys modules
 
06. operator overloading
06. operator overloading06. operator overloading
06. operator overloading
 
Oop concepts in python
Oop concepts in pythonOop concepts in python
Oop concepts in python
 

Viewers also liked

Python Programming Essentials - M10 - Numbers and Artihmetic Operators
Python Programming Essentials - M10 - Numbers and Artihmetic OperatorsPython Programming Essentials - M10 - Numbers and Artihmetic Operators
Python Programming Essentials - M10 - Numbers and Artihmetic OperatorsP3 InfoTech Solutions Pvt. Ltd.
 
Python Programming Essentials - M21 - Exception Handling
Python Programming Essentials - M21 - Exception HandlingPython Programming Essentials - M21 - Exception Handling
Python Programming Essentials - M21 - Exception HandlingP3 InfoTech Solutions Pvt. Ltd.
 
Python Programming Essentials - M1 - Course Introduction
Python Programming Essentials - M1 - Course IntroductionPython Programming Essentials - M1 - Course Introduction
Python Programming Essentials - M1 - Course IntroductionP3 InfoTech Solutions Pvt. Ltd.
 
Python Programming Essentials - M40 - Invoking External Programs
Python Programming Essentials - M40 - Invoking External ProgramsPython Programming Essentials - M40 - Invoking External Programs
Python Programming Essentials - M40 - Invoking External ProgramsP3 InfoTech Solutions Pvt. Ltd.
 
Python Programming Essentials - M28 - Debugging with pdb
Python Programming Essentials - M28 - Debugging with pdbPython Programming Essentials - M28 - Debugging with pdb
Python Programming Essentials - M28 - Debugging with pdbP3 InfoTech Solutions Pvt. Ltd.
 
Python Programming Essentials - M44 - Overview of Web Development
Python Programming Essentials - M44 - Overview of Web DevelopmentPython Programming Essentials - M44 - Overview of Web Development
Python Programming Essentials - M44 - Overview of Web DevelopmentP3 InfoTech Solutions Pvt. Ltd.
 

Viewers also liked (11)

Python Programming Essentials - M4 - Editors and IDEs
Python Programming Essentials - M4 - Editors and IDEsPython Programming Essentials - M4 - Editors and IDEs
Python Programming Essentials - M4 - Editors and IDEs
 
Python Programming Essentials - M10 - Numbers and Artihmetic Operators
Python Programming Essentials - M10 - Numbers and Artihmetic OperatorsPython Programming Essentials - M10 - Numbers and Artihmetic Operators
Python Programming Essentials - M10 - Numbers and Artihmetic Operators
 
Python Programming Essentials - M9 - String Formatting
Python Programming Essentials - M9 - String FormattingPython Programming Essentials - M9 - String Formatting
Python Programming Essentials - M9 - String Formatting
 
Python Programming Essentials - M8 - String Methods
Python Programming Essentials - M8 - String MethodsPython Programming Essentials - M8 - String Methods
Python Programming Essentials - M8 - String Methods
 
Python Programming Essentials - M21 - Exception Handling
Python Programming Essentials - M21 - Exception HandlingPython Programming Essentials - M21 - Exception Handling
Python Programming Essentials - M21 - Exception Handling
 
Python Programming Essentials - M7 - Strings
Python Programming Essentials - M7 - StringsPython Programming Essentials - M7 - Strings
Python Programming Essentials - M7 - Strings
 
Python Programming Essentials - M1 - Course Introduction
Python Programming Essentials - M1 - Course IntroductionPython Programming Essentials - M1 - Course Introduction
Python Programming Essentials - M1 - Course Introduction
 
Python Programming Essentials - M40 - Invoking External Programs
Python Programming Essentials - M40 - Invoking External ProgramsPython Programming Essentials - M40 - Invoking External Programs
Python Programming Essentials - M40 - Invoking External Programs
 
Python Programming Essentials - M28 - Debugging with pdb
Python Programming Essentials - M28 - Debugging with pdbPython Programming Essentials - M28 - Debugging with pdb
Python Programming Essentials - M28 - Debugging with pdb
 
Python Programming Essentials - M31 - PEP 8
Python Programming Essentials - M31 - PEP 8Python Programming Essentials - M31 - PEP 8
Python Programming Essentials - M31 - PEP 8
 
Python Programming Essentials - M44 - Overview of Web Development
Python Programming Essentials - M44 - Overview of Web DevelopmentPython Programming Essentials - M44 - Overview of Web Development
Python Programming Essentials - M44 - Overview of Web Development
 

Similar to Python Programming Essentials - M23 - datetime module

Synapse india dotnet development overloading operater part 4
Synapse india dotnet development overloading operater part 4Synapse india dotnet development overloading operater part 4
Synapse india dotnet development overloading operater part 4Synapseindiappsdevelopment
 
Approaching real-time-hadoop
Approaching real-time-hadoopApproaching real-time-hadoop
Approaching real-time-hadoopChris Huang
 
Easy path to machine learning (Spring 2021)
Easy path to machine learning (Spring 2021)Easy path to machine learning (Spring 2021)
Easy path to machine learning (Spring 2021)wesley chun
 
WINSEM2020-21_STS3105_SS_VL2020210500169_Reference_Material_I_04-Feb-2021_L2_...
WINSEM2020-21_STS3105_SS_VL2020210500169_Reference_Material_I_04-Feb-2021_L2_...WINSEM2020-21_STS3105_SS_VL2020210500169_Reference_Material_I_04-Feb-2021_L2_...
WINSEM2020-21_STS3105_SS_VL2020210500169_Reference_Material_I_04-Feb-2021_L2_...MaruMengesha
 
Rethinking metrics: metrics 2.0 @ Lisa 2014
Rethinking metrics: metrics 2.0 @ Lisa 2014Rethinking metrics: metrics 2.0 @ Lisa 2014
Rethinking metrics: metrics 2.0 @ Lisa 2014Dieter Plaetinck
 
Csphtp1 08
Csphtp1 08Csphtp1 08
Csphtp1 08HUST
 
Implement angular calendar component how to drag & create events
Implement angular calendar component how to drag & create eventsImplement angular calendar component how to drag & create events
Implement angular calendar component how to drag & create eventsKaty Slemon
 
仕事ではじめる機械学習
仕事ではじめる機械学習仕事ではじめる機械学習
仕事ではじめる機械学習Aki Ariga
 
enum_comp_exercicio01.docx
enum_comp_exercicio01.docxenum_comp_exercicio01.docx
enum_comp_exercicio01.docxMichel Valentim
 
From SQLAlchemy to Ming with TurboGears2
From SQLAlchemy to Ming with TurboGears2From SQLAlchemy to Ming with TurboGears2
From SQLAlchemy to Ming with TurboGears2Alessandro Molina
 
Visualising and Linking Open Data from Multiple Sources
Visualising and Linking Open Data from Multiple SourcesVisualising and Linking Open Data from Multiple Sources
Visualising and Linking Open Data from Multiple SourcesData Driven Innovation
 
Connecting and Visualising Open Data from Multiple Sources
Connecting and Visualising Open Data from Multiple SourcesConnecting and Visualising Open Data from Multiple Sources
Connecting and Visualising Open Data from Multiple SourcesMargriet Groenendijk
 
Java22_1670144363.pptx
Java22_1670144363.pptxJava22_1670144363.pptx
Java22_1670144363.pptxDilanAlmsa
 
Easy path to machine learning
Easy path to machine learningEasy path to machine learning
Easy path to machine learningwesley chun
 
Building a custom machine learning model on android
Building a custom machine learning model on androidBuilding a custom machine learning model on android
Building a custom machine learning model on androidIsabel Palomar
 
Info Session: 30 Days of Google Cloud
Info Session: 30 Days of Google CloudInfo Session: 30 Days of Google Cloud
Info Session: 30 Days of Google CloudSuyashDahake1
 
#NoEstimates project planning using Monte Carlo simulation
#NoEstimates project planning using Monte Carlo simulation#NoEstimates project planning using Monte Carlo simulation
#NoEstimates project planning using Monte Carlo simulationDimitar Bakardzhiev
 

Similar to Python Programming Essentials - M23 - datetime module (20)

Synapse india dotnet development overloading operater part 4
Synapse india dotnet development overloading operater part 4Synapse india dotnet development overloading operater part 4
Synapse india dotnet development overloading operater part 4
 
Approaching real-time-hadoop
Approaching real-time-hadoopApproaching real-time-hadoop
Approaching real-time-hadoop
 
Easy path to machine learning (Spring 2021)
Easy path to machine learning (Spring 2021)Easy path to machine learning (Spring 2021)
Easy path to machine learning (Spring 2021)
 
WINSEM2020-21_STS3105_SS_VL2020210500169_Reference_Material_I_04-Feb-2021_L2_...
WINSEM2020-21_STS3105_SS_VL2020210500169_Reference_Material_I_04-Feb-2021_L2_...WINSEM2020-21_STS3105_SS_VL2020210500169_Reference_Material_I_04-Feb-2021_L2_...
WINSEM2020-21_STS3105_SS_VL2020210500169_Reference_Material_I_04-Feb-2021_L2_...
 
Rethinking metrics: metrics 2.0 @ Lisa 2014
Rethinking metrics: metrics 2.0 @ Lisa 2014Rethinking metrics: metrics 2.0 @ Lisa 2014
Rethinking metrics: metrics 2.0 @ Lisa 2014
 
Csphtp1 08
Csphtp1 08Csphtp1 08
Csphtp1 08
 
Implement angular calendar component how to drag & create events
Implement angular calendar component how to drag & create eventsImplement angular calendar component how to drag & create events
Implement angular calendar component how to drag & create events
 
Domain Driven Design In C#3.0
Domain Driven Design In C#3.0Domain Driven Design In C#3.0
Domain Driven Design In C#3.0
 
Jsr310
Jsr310Jsr310
Jsr310
 
仕事ではじめる機械学習
仕事ではじめる機械学習仕事ではじめる機械学習
仕事ではじめる機械学習
 
enum_comp_exercicio01.docx
enum_comp_exercicio01.docxenum_comp_exercicio01.docx
enum_comp_exercicio01.docx
 
From SQLAlchemy to Ming with TurboGears2
From SQLAlchemy to Ming with TurboGears2From SQLAlchemy to Ming with TurboGears2
From SQLAlchemy to Ming with TurboGears2
 
Visualising and Linking Open Data from Multiple Sources
Visualising and Linking Open Data from Multiple SourcesVisualising and Linking Open Data from Multiple Sources
Visualising and Linking Open Data from Multiple Sources
 
Connecting and Visualising Open Data from Multiple Sources
Connecting and Visualising Open Data from Multiple SourcesConnecting and Visualising Open Data from Multiple Sources
Connecting and Visualising Open Data from Multiple Sources
 
DataXDay - Tensors in the sky with CloudML
DataXDay - Tensors in the sky with CloudML DataXDay - Tensors in the sky with CloudML
DataXDay - Tensors in the sky with CloudML
 
Java22_1670144363.pptx
Java22_1670144363.pptxJava22_1670144363.pptx
Java22_1670144363.pptx
 
Easy path to machine learning
Easy path to machine learningEasy path to machine learning
Easy path to machine learning
 
Building a custom machine learning model on android
Building a custom machine learning model on androidBuilding a custom machine learning model on android
Building a custom machine learning model on android
 
Info Session: 30 Days of Google Cloud
Info Session: 30 Days of Google CloudInfo Session: 30 Days of Google Cloud
Info Session: 30 Days of Google Cloud
 
#NoEstimates project planning using Monte Carlo simulation
#NoEstimates project planning using Monte Carlo simulation#NoEstimates project planning using Monte Carlo simulation
#NoEstimates project planning using Monte Carlo simulation
 

More from P3 InfoTech Solutions Pvt. Ltd.

Python Programming Essentials - M37 - Brief Overview of Misc Concepts
Python Programming Essentials - M37 - Brief Overview of Misc ConceptsPython Programming Essentials - M37 - Brief Overview of Misc Concepts
Python Programming Essentials - M37 - Brief Overview of Misc ConceptsP3 InfoTech Solutions Pvt. Ltd.
 
Python Programming Essentials - M35 - Iterators & Generators
Python Programming Essentials - M35 - Iterators & GeneratorsPython Programming Essentials - M35 - Iterators & Generators
Python Programming Essentials - M35 - Iterators & GeneratorsP3 InfoTech Solutions Pvt. Ltd.
 
Python Programming Essentials - M34 - List Comprehensions
Python Programming Essentials - M34 - List ComprehensionsPython Programming Essentials - M34 - List Comprehensions
Python Programming Essentials - M34 - List ComprehensionsP3 InfoTech Solutions Pvt. Ltd.
 
Python Programming Essentials - M29 - Python Interpreter and Files
Python Programming Essentials - M29 - Python Interpreter and FilesPython Programming Essentials - M29 - Python Interpreter and Files
Python Programming Essentials - M29 - Python Interpreter and FilesP3 InfoTech Solutions Pvt. Ltd.
 
Python Programming Essentials - M20 - Classes and Objects
Python Programming Essentials - M20 - Classes and ObjectsPython Programming Essentials - M20 - Classes and Objects
Python Programming Essentials - M20 - Classes and ObjectsP3 InfoTech Solutions Pvt. Ltd.
 
Python Programming Essentials - M19 - Namespaces, Global Variables and Docstr...
Python Programming Essentials - M19 - Namespaces, Global Variables and Docstr...Python Programming Essentials - M19 - Namespaces, Global Variables and Docstr...
Python Programming Essentials - M19 - Namespaces, Global Variables and Docstr...P3 InfoTech Solutions Pvt. Ltd.
 
Python Programming Essentials - M18 - Modules and Packages
Python Programming Essentials - M18 - Modules and PackagesPython Programming Essentials - M18 - Modules and Packages
Python Programming Essentials - M18 - Modules and PackagesP3 InfoTech Solutions Pvt. Ltd.
 
Python Programming Essentials - M16 - Control Flow Statements and Loops
Python Programming Essentials - M16 - Control Flow Statements and LoopsPython Programming Essentials - M16 - Control Flow Statements and Loops
Python Programming Essentials - M16 - Control Flow Statements and LoopsP3 InfoTech Solutions Pvt. Ltd.
 
Python Programming Essentials - M11 - Comparison and Logical Operators
Python Programming Essentials - M11 - Comparison and Logical OperatorsPython Programming Essentials - M11 - Comparison and Logical Operators
Python Programming Essentials - M11 - Comparison and Logical OperatorsP3 InfoTech Solutions Pvt. Ltd.
 
Python Programming Essentials - M6 - Code Blocks and Indentation
Python Programming Essentials - M6 - Code Blocks and IndentationPython Programming Essentials - M6 - Code Blocks and Indentation
Python Programming Essentials - M6 - Code Blocks and IndentationP3 InfoTech Solutions Pvt. Ltd.
 

More from P3 InfoTech Solutions Pvt. Ltd. (19)

Python Programming Essentials - M39 - Unit Testing
Python Programming Essentials - M39 - Unit TestingPython Programming Essentials - M39 - Unit Testing
Python Programming Essentials - M39 - Unit Testing
 
Python Programming Essentials - M37 - Brief Overview of Misc Concepts
Python Programming Essentials - M37 - Brief Overview of Misc ConceptsPython Programming Essentials - M37 - Brief Overview of Misc Concepts
Python Programming Essentials - M37 - Brief Overview of Misc Concepts
 
Python Programming Essentials - M35 - Iterators & Generators
Python Programming Essentials - M35 - Iterators & GeneratorsPython Programming Essentials - M35 - Iterators & Generators
Python Programming Essentials - M35 - Iterators & Generators
 
Python Programming Essentials - M34 - List Comprehensions
Python Programming Essentials - M34 - List ComprehensionsPython Programming Essentials - M34 - List Comprehensions
Python Programming Essentials - M34 - List Comprehensions
 
Python Programming Essentials - M29 - Python Interpreter and Files
Python Programming Essentials - M29 - Python Interpreter and FilesPython Programming Essentials - M29 - Python Interpreter and Files
Python Programming Essentials - M29 - Python Interpreter and Files
 
Python Programming Essentials - M27 - Logging module
Python Programming Essentials - M27 - Logging modulePython Programming Essentials - M27 - Logging module
Python Programming Essentials - M27 - Logging module
 
Python Programming Essentials - M22 - File Operations
Python Programming Essentials - M22 - File OperationsPython Programming Essentials - M22 - File Operations
Python Programming Essentials - M22 - File Operations
 
Python Programming Essentials - M20 - Classes and Objects
Python Programming Essentials - M20 - Classes and ObjectsPython Programming Essentials - M20 - Classes and Objects
Python Programming Essentials - M20 - Classes and Objects
 
Python Programming Essentials - M19 - Namespaces, Global Variables and Docstr...
Python Programming Essentials - M19 - Namespaces, Global Variables and Docstr...Python Programming Essentials - M19 - Namespaces, Global Variables and Docstr...
Python Programming Essentials - M19 - Namespaces, Global Variables and Docstr...
 
Python Programming Essentials - M18 - Modules and Packages
Python Programming Essentials - M18 - Modules and PackagesPython Programming Essentials - M18 - Modules and Packages
Python Programming Essentials - M18 - Modules and Packages
 
Python Programming Essentials - M17 - Functions
Python Programming Essentials - M17 - FunctionsPython Programming Essentials - M17 - Functions
Python Programming Essentials - M17 - Functions
 
Python Programming Essentials - M16 - Control Flow Statements and Loops
Python Programming Essentials - M16 - Control Flow Statements and LoopsPython Programming Essentials - M16 - Control Flow Statements and Loops
Python Programming Essentials - M16 - Control Flow Statements and Loops
 
Python Programming Essentials - M15 - References
Python Programming Essentials - M15 - ReferencesPython Programming Essentials - M15 - References
Python Programming Essentials - M15 - References
 
Python Programming Essentials - M14 - Dictionaries
Python Programming Essentials - M14 - DictionariesPython Programming Essentials - M14 - Dictionaries
Python Programming Essentials - M14 - Dictionaries
 
Python Programming Essentials - M13 - Tuples
Python Programming Essentials - M13 - TuplesPython Programming Essentials - M13 - Tuples
Python Programming Essentials - M13 - Tuples
 
Python Programming Essentials - M12 - Lists
Python Programming Essentials - M12 - ListsPython Programming Essentials - M12 - Lists
Python Programming Essentials - M12 - Lists
 
Python Programming Essentials - M11 - Comparison and Logical Operators
Python Programming Essentials - M11 - Comparison and Logical OperatorsPython Programming Essentials - M11 - Comparison and Logical Operators
Python Programming Essentials - M11 - Comparison and Logical Operators
 
Python Programming Essentials - M6 - Code Blocks and Indentation
Python Programming Essentials - M6 - Code Blocks and IndentationPython Programming Essentials - M6 - Code Blocks and Indentation
Python Programming Essentials - M6 - Code Blocks and Indentation
 
Python Programming Essentials - M5 - Variables
Python Programming Essentials - M5 - VariablesPython Programming Essentials - M5 - Variables
Python Programming Essentials - M5 - Variables
 

Python Programming Essentials - M23 - datetime module

  • 1. http://www.skillbrew.com /SkillbrewTalent brewed by the industry itself Datetime module Pavan Verma @YinYangPavan 1 Founder, P3 InfoTech Solutions Pvt. Ltd. Python Programming Essentials
  • 2. © SkillBrew http://skillbrew.com Introduction to datetime module 2 The datetime module supplies classes for manipulating dates and times Key classes in datetime module Date Time Datetime Timedelta tzinfo
  • 3. © SkillBrew http://skillbrew.com Types of datetime objects Date and Time objects Naive objects Aware objects 3 Naive objects are not aware of time zones and day-light savings but they are pretty easy to understand An aware object has sufficient knowledge of time zones and day-light savings
  • 4. © SkillBrew http://skillbrew.com Note 4 All examples in these slides are using naive objects
  • 5. © SkillBrew http://skillbrew.com Date objects 5 from datetime import date d = date(2013, 8, 22) print(d.year) print(d.month) print(d.day) print(d.strftime("%Y %m %d")) Output: 2013 8 22 2013 08 22
  • 6. © SkillBrew http://skillbrew.com Date objects (2) 6 >>> from datetime import date >>> date.today() datetime.date(2013, 10, 21)
  • 7. © SkillBrew http://skillbrew.com Time objects 7 from datetime import time t = time(2, 30, 45) print(t.hour) print(t.minute) print(t.second) print(t.strftime("%H:%M:%S")) Output: 2 30 45 02:30:45
  • 8. © SkillBrew http://skillbrew.com DateTime objects 8 from datetime import datetime dt = datetime(2013, 8, 21, 2, 30, 45) print(dt.hour) print(dt.minute) print(dt.second) print(dt.strftime("%m-%d-%Y %H:%M:%S")) Output: 2 30 45 08-21-2013 02:30:45
  • 9. © SkillBrew http://skillbrew.com Manipulating dates 9 from datetime import datetime, timedelta dt = datetime(2013, 8, 21, 2, 30, 45) print(dt.strftime("%m-%d-%Y %H:%M:%S")) Output: 08-21-2013 02:30:45
  • 10. © SkillBrew http://skillbrew.com Manipulating dates (2) 10 from datetime import datetime, timedelta dt = datetime(2013, 8, 21, 2, 30, 45) # get datetime after 5 days add_dt = dt + timedelta(days=5) print(add_dt.strftime("%m-%d-%Y %H:%M:%S")) Output: 08-26-2013 02:30:45
  • 11. © SkillBrew http://skillbrew.com Manipulating dates (3) 11 from datetime import datetime, timedelta dt = datetime(2013, 8, 21, 2, 30, 45) # get datetime after 5 days add_dt = dt + timedelta(days=5) # get datetime 2 days in past sub_dt = dt - timedelta(days=2) print(sub_dt.strftime("%m-%d-%Y %H:%M:%S")) Output: 08-19-2013 02:30:45
  • 12. © SkillBrew http://skillbrew.com Manipulating dates (4) 12 from datetime import datetime, timedelta dt = datetime(2013, 8, 21, 2, 30, 45) # get datetime after 5 days add_dt = dt + timedelta(days=5) # get datetime 2 days in past sub_dt = dt - timedelta(days=2) # comparison print add_dt > sub_dt Output: True
  • 13. © SkillBrew http://skillbrew.com Manipulating dates (5) 13 from datetime import datetime, timedelta dt = datetime(2013, 8, 21, 2, 30, 45) # get datetime after 5 days add_dt = dt + timedelta(days=5) # get datetime 2 days in past sub_dt = dt - timedelta(days=2) # comparison add_dt > sub_dt # subtract print add_dt - sub_dt Output: 7 days, 0:00:00
  • 14. © SkillBrew http://skillbrew.com Summary  Introduction to datetime module  Types of datetime objects  Date objects  Time objects  Datetime objects  Manipulating Dates 14
  • 15. © SkillBrew http://skillbrew.com Resources  Datetime objects blog post http://buddylindsey.com/python-date-and-datetime- objects-getting-to-know-them/  http://docs.python.org/2/library/datetime.html 15