Python Road (13th) "Day21" Time module, random module, string module, verification code practiceOne, Time modulethree types of time representation
In Python, there are usually several ways to represent time:
Timestamp (timestamp): Typically, a timestamp represents an offset that is calculated in seconds, starting January 1, 1970 00:00:00. (from 1970 to now this moment total number of seconds) we run "type (Time.time ())" and return the float type. such as Time.time () =1525688497.608947
Formatted time string (string time) such as "2018-05-06"
Tuple (Struct_time) (structured time): Struct_time A total of 9 elements in total nine elements: (year, month, day, hour, minute, second, week of the year, Day of the year, summer Time)
?
1, Time.time ():
Returns the timestamp of the current time
Import time ti = time.time () print (TI)
Output results
1525688497.608947
2, Time.localtime ([secs])
Converts a timestamp to the struct_time of the current time zone, which is the time array format. The secs parameter is not provided, whichever is the current time.
Example
Import time #没有参数 print (Time.localtime ()) #有参数 print (Time.localtime (1480000000))
Output results
Time.struct_time (tm_year=2018, tm_mon=5, tm_mday=7, tm_hour=18, tm_min=46, tm_sec=25, tm_wday=0, tm_yday=127, TM_ISDST =0) time.struct_time (tm_year=2016, tm_mon=11, tm_mday=24, tm_hour=23, tm_min=6, tm_sec=40, tm_wday=3, tm_yday=329 , tm_isdst=0)
Example 2
Import Time ? T=time.localtime () print (t.tm_year) #取结构化时间中单独的数值 Print (T.tm_mon) print (T.tm_mday)
Output results
2018 5 6
Structured time elements represent meaning
Tm_year #年 1970-2018 ? Tm_mon #月 1-12 ? Tm_mday #日 1-31 ? Tm_hour #时 0-23 ? Tm_min #分 0-59 ? Tm_sec #秒 0-59 ? Tm_wday #一周中得第几天 0-6 , Monday is 0, Sunday is 6 ? Tm_yday #一年中得第几天 0-365 ? TM_ISDST #是否是夏令时 0-1 ?
3, Gmtime ([secs])
Similar to the LocalTime () method, the Gmtime () method is a struct_time that converts a timestamp to the UTC time zone (0 o'clock Zone).
That is, the tuple value that returns the current GMT
4, Mktime (t)
Converts a struct_time to a timestamp.
Example
Import Time print (Time.mktime (Time.localtime ()))
Output results
1525693661.0
5, Asctime ([t])
A tuple or struct_time representing time is represented in this form: ' Sun June 20 23:21:05 1993 '.
Example
Import Time print (Time.asctime (Time.localtime ()))
Output results
Mon may 7 19:49:21 2018
6, CTime ([secs])
Converts a timestamp (a floating-point number in seconds) into the form of time.asctime (). If the parameter is not given or is
None, the default Time.time () will be the parameter.
Its function is equivalent to Time.asctime (time.localtime (secs)).
Import Time print (Time.ctime ())
Output results
Mon may 7 20:17:12 2018
7, Strftime (format[, T])
Converts a tuple or struct_time that represents time, such as returned by Time.localtime () and Time.gmtime (), to a formatted time string. If T is not specified, the Time.localtime () is passed in. If any of the elements in the tuple are out of bounds, the ValueError error will be thrown.
python format symbols in time Date:
%y Two-digit year representation (00-99) ? %Y Four-digit year representation (000-9999) ? %m month (01-12) ? One day in%d months (0-31) ? %H 24-hour hours (0-23) #注意是大写 ? %I 12-hour hours (01-12) ? %M minutes (00=59) #注意是大写 ? %s seconds (00-59) #注意是大写 ? %a Local Simplified week name ? %A Local full week name ? %b a simplified local month name ? %B a local full month name ? The corresponding date representation and time representation of%c local ? %j Day of the Year (001-366) ? %p the equivalent of a local a.m. or p.m. ? %u weeks of the year (00-53) Sunday is the beginning of the week ? %w Week (0-6), Sunday for the beginning of the week ? %W Week of the Year (00-53) Monday is the beginning of the week ? %x Local corresponding date representation ? %x local corresponding time representation ? %Z the name of the current time zone ? Percent% of the number itself
?
Example
Import Time ? Print (Time.strftime ("%y-%m-%d%h:%m:%s", Time.localtime ()))
Output results
2018-05-07 20:33:32
8, Strptime (string[, format])
Converts a formatted time (string time) string to Struct_time. In fact it is inverse operation with strftime ().
Import Time ? Print (Time.strptime ("2018/05/07 20:33:32", "%y/%m/%d%h:%m:%s")) #第一个参数这里的字符串分隔的字符 # can be defined by itself, the second parameter corresponds to the first parameter
Output results
Time.struct_time (tm_year=2018, tm_mon=5, tm_mday=7, tm_hour=20, tm_min=33, tm_sec=32, tm_wday=0, tm_yday=127, TM_ISDST =-1)
You can also take a separate value here
Import Time ? T=time.strptime ("2018/05/07 20:33:32", "%y/%m/%d%h:%m:%s") print (t.tm_mday) print (t.tm_year)
Output results
7
9. Sleep (secs)
The thread defers the specified time run, in seconds.
Import Time ? S1 = "Hello" s2 = "Nicholas" print (S1) Time.sleep (2) print (s2)
Output results
Hello #程序延迟2秒后输出 "Nicholas"
10. Clock () (Learn)
The Python Time Clock () function returns the current CPU times as a number of seconds in floating-point count. It is more useful than time.time () to measure the time spent on different programs.
It is important to note that the meanings are different on different systems. On a UNIX system, it returns "process time", which is a floating-point number (timestamp) in seconds. In Windows, the first call returns the actual time that the process is running. The second subsequent call is the elapsed time since the first call to the present. (actually based on QueryPerformanceCounter () on WIN32, which is more accurate than milliseconds)
Time different forms convert each other
second, random module
Modules that generate random values
1, random.random ()
Randomly produce decimals greater than 0 and less than 1
Import random v1 = random.random ()
2, Random.uniform (A, b)
Returns a floating-point number between A and B. Typically a<b, that is, returns a floating-point number between A and B, or a floating-point number between B and a if a is greater than B. Both A and b here are likely to appear in the results.
Import random v1 = random.uniform (1.1,2.5) #这里的a, B is not necessarily an integer, is generally written as an integer
3, Random.randint (A, b)
Returns an integer between Range[a,b], that is, an integer
Import random v1 = random.randint (1,3) #这里a, B must be an integer, and a, a, a, can appear in the result
4, Random.randrange (Start, stop[, step])
Random.randrange (Start, stop[, step]) # Returns an integer between Range[start,stop), start\stop must be an integer, plus step, similar to Range (0,10,2).
Import random v1 = random.randrange (1,5,2)
5, Random.choice (seq)
Randomly selects an element from a non-empty sequence seq (string is also a sequence). If seq is empty, the indexerror exception pops up.
Import random v1 = Random.choice ([1,5,2, "ni", {"K1": "v1"},["HI", 8]]) print (v1)
Output results
From the list [1,5,2, "ni", {"K1": "v1"},["HI", 8]] randomly returns an element
Import Random ? Print (Random.choice ("Nicholas"))
Output results
Randomly returns a character of the string "Nicholas"
6, Random.sample (population, K)
Randomly select K non-repeating elements from a population sample or collection to form a new sequence
Import random v1 = random.sample ([1,5,2, "ni", {"K1": "v1"},["HI", 8]],3) print (v1)
Output results
Randomly extract 3 non-repeating elements from a list to form a new list
7, Random.shuffle ()
Disturb the order of the list
Import random li = [1,5,2,3] random.shuffle (LI) print (LI)
Output: Output The list of 4 elements in a random order
three, String module (Learn)
The string method is shown in the previous blog post.
Here are some string constants
1, String.ascii_lowercase
Returns the lowercase letter ' abcdefghijklmnopqrstuvwxyz ' of the string
Import Stringprint (string.ascii_lowercase)
2, String.ascii_uppercase
Returns a string of uppercase letters ' ABCDEFGHIJKLMNOPQRSTUVWXYZ '
Import Stringprint (string.ascii_uppercase)
3, String.ascii_letters
Returns a string consisting of a lowercase a~z plus uppercase a~z, which is a string consisting of String.ascii_lowercase connection string.ascii_uppercase
Import Stringprint (string.ascii_letters)
4, String.digits
String of numbers 0 to 9: ' 0123456789 '
Import Stringprint (string.digits)
5, String.hexdigits
Returns the string ' 0123456789abcdefABCDEF ', which is a string of all hexadecimal characters (the English letter plus the case)
Import Stringprint (string.hexdigits)
6, String.letters
The results returned by String.letters in Python2 are the same as String.ascii_letters, and are canceled in Python3.
String.ascii_letters can be used in both Python2 and Python3.
7, String.lowercase
String.lowercase returns a string of lowercase ' abcdefghijklmnopqrstuvwxyz ' in Python2, consistent with String.ascii_lowercase and canceled in Python3
String.ascii_lowercase can be used in both Python2 and Python3.
8, String.uppercase
String.lowercase returns a string of uppercase letters ' ABCDEFGHIJKLMNOPQRSTUVWXYZ ' in Python2, consistent with String.ascii_uppercase, canceled in Python3
String.ascii_uppercase can be used in both Python2 and Python3.
9, String.octdigits
Returns a string consisting of all characters in octal
Import Stringprint (string.octdigits)
10, String.punctuation
Return all punctuation characters
Import Stringprint (string.punctuation)
Output results
!" #$%& ' () *+,-./:;<=>[email protected][\]^_ ' {|} ~
11, String.printable
Returns a string of all printable characters. Contains numbers, letters, punctuation, and spaces
Import Stringprint (string.printable)
Output results
Analysis: A string consisting of String.digits plus string.ascii_letters plus string.punctuation
Four, verification code practice
Generate four-bit digital verification code
1, Method one
Import Random li=[str (i) for I in Random.sample (range (0,10), 4)] print ("". Join (LI))
2. Method Two
Import random li = [] for I in range (4): li.append (str (random.randint (0,9))) print ("". Join (LI))
Generate four-bit verification codes with numbers and letters
1, Method one
Import random num_l = list (map (str,list (range))) #获取以0-9 String for the listing of elements del_l = lists (range (91,97)) Chr_ L = [Chr (i) if I not in del_l else "for I in Range (65,123)] #获取大小写的a-Z list, remove the middle 6 special characters num_l.extend (chr_l) #将字母和 The numbers are grouped together res_l = num_l res_str = "". Join (res_l). Strip ("") #去掉空字符元素 print ("". Join (Random.sample (Res_ str,4)))
2. Method Two
Import Stringimport Randomres_str = ("%s%s")% (string.ascii_letters,string.digits) print ("". Join (Random.sample (Res_ str,4)))
Python Route (13th) Time module, random module, string module, verification code exercise