Python Learning Note 10: Date and time

Source: Internet
Author: User

Date and time processing is something that you will often encounter.

What is tick?

The time interval is a floating-point decimal in seconds.

Each timestamp is represented by how long it has been since midnight on January 1, 1970 (the calendar).

There are many functions under the popular time module included with Python to convert common date formats. such as the function Time.time () returns the current operating system time of the record starting from 12:00am, January 1, 1970 (epoch) with the Ticks Timing unit, as in the following example:

1 # !/usr/bin/python 2 import time;  # This is required to include time module. 3 4 ticks = time.time ()5print"numberof ticks since 12:00am, January 1, 1970:", Ticks
Number of ticks since 12:00am, January 1, 1970:7,186,862,.73,399

Tick units are best suited for date operations. But the dates before 1970 can't be expressed.

What is a time tuple?

Many Python functions use a single element to assemble 9 sets of digital processing time:

Serial Number Field value
0 4-digit years 2008
1 Month 1 to 12
2 Day 1 to 31
3 Hours 0 to 23
4 Minutes
5 Seconds 0 to 61 (60 or 61 is a leap second)
6 The first day of the week 0 to 6 (0 is Monday)
7 The first day of the year 1 to 366 (Julian calendar)
8 Daylight saving time -1, 0, 1,-1 is the flag that decides whether to be daylight saving time

The above is also the struct_time tuple. This structure has the following properties:

Serial Number Properties value
0 Tm_year 2008
1 Tm_mon 1 to 12
2 Tm_mday 1 to 31
3 Tm_hour 0 to 23
4 Tm_min 0 to 59
5 Tm_sec 0 to 61 (60 or 61 is a leap second)
6 Tm_wday 0 to 6 (0 is Monday)
7 Tm_yday 1 to 366 (Julian calendar)
8 Tm_isdst -1, 0, 1,-1 is the flag that decides whether to be daylight saving time
Get current time

Converts from the time of the return floating-point number to the time tuple, as long as the floating-point number is passed to a function such as localtime.

1 # !/usr/bin/python 2 Import Time ; 3 4 localtime = time.localtime (time.time ())5print"Local Current time:", localtime
Local Current Time:time.struct_time (tm_year=2013, tm_mon=7, Tm_mday=17, tm_hour=21, tm_min=26, Tm_sec=3, TM _wday=2, tm_yday=198, tm_isdst=0)
Get the formatted time

You can choose a variety of formats according to your needs, but the simplest function to get a readable time pattern is asctime ():

1 # !/usr/bin/python 2 Import Time ; 3 4 localtime = time.asctime (time.localtime (Time.time ()))5print" Local Current time: ", localtime
Local current Time:tue Jan 13 10:17:09 2009
Get a calendar for a month

The Calendar module has a wide range of methods for working with calendar and monthly calendars, such as printing a month's monthly calendar:

1 # !/usr/bin/python 2 Import Calendar 3 4 cal = Calendar.month (1)5print"Here is thecalendar:  "6print cal;
 is The calendar:      $Mo Tu We Th Fr Sa Su    1  2  3  4  5  6 7  8  9 10 11 12 1314 15 16 17 18 19 2021 22 23 24 25 26 2728 29 30 31
Time Module

The time module contains the following built-in functions, both temporal and conversion time formats:

Serial Number Functions and descriptions
1 Time.altzone
Returns the number of seconds to offset the daylight saving time region in West Greenwich. If the region returns negative values in eastern Greenwich (such as Western Europe, including the UK). Available for daylight saving time enabled regions.
2 Time.asctime ([Tupletime])
Accepts a time tuple and returns a read-only string of 24 characters in the form "Tue Dec 11 18:07:14 2008" (December 11, 2008 Tuesday 18:07 14 seconds).
3 Time.clock ()
The number of seconds used to calculate the floating-point count returns the current CPU time. It is more useful than time.time () to measure the time spent on different programs.
4 Time.ctime ([secs])
function equivalent to Asctime (localtime (secs)), parameter is not given equal to Asctime ()
5 Time.gmtime ([secs])
Receives the time suffix (the number of floating-point seconds elapsed after the 1970 era) and returns the time-tuple T in Greenwich Astronomical time. Note: T.TM_ISDST is always 0
6 Time.localtime ([secs])
The Receive time suffix (the number of floating-point seconds after the 1970 era) and the time-of-day tuple T (t.tm_isdst 0 or 1, depending on whether the local time is daylight saving).
7 Time.mktime (Tupletime)
Accepts the time tuple and returns the time suffix (the number of floating-point seconds elapsed after the 1970 era).
8 Time.sleep (secs)
Postpone the call thread's run, secs refers to the number of seconds.
9 Time.strftime (Fmt[,tupletime])
Receives a time tuple and returns the local time as a readable string, formatted as determined by the FMT.
10 Time.strptime (str,fmt= '%a%b%d%h:%m:%s%Y ')
Resolves a time string to a time tuple according to the format of the FMT.
11 Time.time ()
Returns the timestamp of the current time (the number of floating-point seconds elapsed after the 1970 era).
12 Time.tzset ()
Re-initializing time-related settings based on environment variable TZ

The time module contains the following 2 very important properties:

Serial Number Properties and Descriptions
1 Time.timezone
The attribute Time.timezone is the number of seconds (>0, Americas; <=0 most of Europe, Asia, and Africa) from Greenwich in the local time zone (daylight saving is not started).
2 Time.tzname
The Time.tzname property contains a pair of different strings depending on the situation, which is the local time zone name with daylight savings, and No.
Calendar Module

The functions of this module are calendar-related, such as printing a month's character calendar.

Monday is the default first day of the week, and Sunday is the default last day. You need to call the Calendar.setfirstweekday () function to change the settings. The module contains the following built-in functions:

Serial Number Functions and descriptions
1 Calendar.calendar (year,w=2,l=1,c=6)
Returns the year calendar of a multi-line string format with a 3-month line with a distance of C. The daily width interval is w characters. The length of each line is 21* w+18+2* C. L is the number of rows per week.
2 Calendar.firstweekday ()
Returns the settings for the current weekly start date. By default, 0 is returned when the Caendar module is first loaded, which is Monday.
3 Calendar.isleap (year)
is a leap year that returns true, otherwise false.
4 Calendar.leapdays (Y1,y2)
Returns the total number of leap years between y1,y2 two.
5 Calendar.month (year,month,w=2,l=1)
Returns a multi-line string format for year month calendar, two row headings, and one week row. The daily width interval is w characters. The length of each line is 7* w+6. L is the number of rows per week.
6 Calendar.monthcalendar (Year,month)
Returns a single-level nested list of integers. Each sub-list is loaded with integers representing one weeks. The date of year month is set to 0, and the day of the month is indicated by the day of the week, starting from 1.
7 Calendar.monthrange (Year,month)
Returns a two integer. The first is the day of the week of the month, and the second is the date code for that month. Day from 0 (Monday) to 6 (Sunday); The month is from 1 to 12.
8 Calendar.prcal (year,w=2,l=1,c=6)
Equivalent to print Calendar.calendar (year,w,l,c).
9 Calendar.prmonth (year,month,w=2,l=1)
Equivalent to print Calendar.calendar (year,w,l,c).
10 Calendar.setfirstweekday (Weekday)
Set the starting date code for the week. 0 (Monday) to 6 (Sunday).
11 CALENDAR.TIMEGM (Tupletime)
In contrast to Time.gmtime: accepts a time tuple form, returning the time suffix (the number of floating-point seconds elapsed after the 1970 era).
12 Calendar.weekday (Year,month,day)
Returns the date code for the given date. 0 (Monday) to 6 (Sunday). The month is 1 (January) to 12 (December).

Other related modules and functions

In Python, other modules that deal with the date and time are:

      • DateTime module
      • Pytz Module
      • Dateutil Module

Python Learning Note 10: Date and time

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.