日期工夫

Python中的日期自身不是数据类型,但咱们能够导入一个名为datetime的模块,将日期作为日期对象应用。

import datetimex = datetime.datetime.now()print(x)

日期输入

import datetimex = datetime.datetime.now()print(x.year)print(x.strftime("%A"))

创立日期对象

import datetimex = datetime.datetime(2020, 5, 17)print(x)

strftime()办法

import datetimex = datetime.datetime(2018, 6, 1)print(x.strftime("%B"))
DirectiveDescriptionExample
%aWeekday, short versionWed
%AWeekday, full versionWednesday
%wWeekday as a number 0-6, 0 is Sunday3
%dDay of month 01-3131
%bMonth name, short versionDec
%BMonth name, full versionDecember
%mMonth as a number 01-1212
%yYear, short version, without century18
%YYear, full version2018
%HHour 00-2317
%IHour 00-1205
%pAM/PMPM
%MMinute 00-5941
%SSecond 00-5908
%fMicrosecond 000000-999999548513
%zUTC offset+0100
%ZTimezoneCST
%jDay number of year 001-366365
%UWeek number of year, Sunday as the first day of week, 00-5352
%WWeek number of year, Monday as the first day of week, 00-5352
%cLocal version of date and timeMon Dec 31 17:41:00 2018
%CCentury20
%xLocal version of date12/31/18
%XLocal version of time17:41:00
%%A % character%
%GISO 8601 year2018
%uISO 8601 weekday (1-7)1

数学

min()和max()函数可用于查找可迭代中的最低或最高值

x = min(5, 10, 25)y = max(5, 10, 25)print(x)print(y)

函数的作用是:返回指定数字的相对(正)值

x = abs(-7.25)print(x)

pow(x,y)函数将x的值返回到y(xy)的幂。

# Return the value of 4 to the power of 3 (same as 4 * 4 * 4)x = pow(4, 3)print(x)

数学模块

import mathx = math.sqrt(64)print(x)

ceil()办法将一个数字向上舍入到其最靠近的整数,而后进行数学运算。floor()办法将数字向下舍入到最靠近的整数,并返回后果

import mathx = math.ceil(1.4)y = math.floor(1.4)print(x) # returns 2print(y) # returns 1

pi常量,返回pi的值(3.14…)

import mathx = math.piprint(x)

JSON

从JSON转换为Python

import json# some JSON:x =  '{ "name":"John", "age":30, "city":"New York"}'# parse x:y = json.loads(x)# the result is a Python dictionary:print(y["age"])

从Python转换为JSON

import json# a Python object (dict):x = {  "name": "John",  "age": 30,  "city": "New York"}# convert into JSON:y = json.dumps(x)# the result is a JSON string:print(y)

您能够将以下类型的Python对象转换为JSON字符串.

当您从Python转换为JSON时,Python对象将转换成JSON(JavaScript)等价物

PythonJSON
dictObject
listArray
tupleArray
strString
intNumber
floatNumber
Truetrue
Falsefalse
Nonenull

格式化后果

应用缩进参数定义缩进的数量

json.dumps(x, indent=4)

您还能够定义分隔符,默认值为(“,”,“:”,这意味着应用逗号和空格分隔每个对象,应用冒号和空格分隔键和值

json.dumps(x, indent=4, separators=(". ", " = "))

json_dumps()办法有参数来对resu中的键进行排序

json.dumps(x, indent=4, sort_keys=True)

正则表达式

Python有一个名为re的内置包,可用于解决正则表达式。

import re

正则表达式函数

FunctionDescription
findallReturns a list containing all matches
searchReturns a Match object if there is a match anywhere in the string
splitReturns a list where the string has been split at each match
subReplaces one or many matches with a string

元字符是具备非凡含意的字符

CharacterDescriptionExample
[]A set of characters"[a-m]"
\Signals a special sequence (can also be used to escape special characters)"\d"
.Any character (except newline character)"he..o"
^Starts with"^hello"
$Ends with"planet$"
*Zero or more occurrences"he.*o"
+One or more occurrences"he.+o"
?Zero or one occurrences"he.?o"
{}Exactly the specified number of occurrences"he.{2}o"
\Either or"falls\stays"
()Capture and group

非凡序列

CharacterDescriptionExample
\AReturns a match if the specified characters are at the beginning of the string"\AThe"
\bReturns a match where the specified characters are at the beginning or at the end of a word (the "r" in the beginning is making sure that the string is being treated as a "raw string")r"\bain" r"ain\b"
\BReturns a match where the specified characters are present, but NOT at the beginning (or at the end) of a word (the "r" in the beginning is making sure that the string is being treated as a "raw string")r"\Bain" r"ain\B"
\dReturns a match where the string contains digits (numbers from 0-9)"\d"
\DReturns a match where the string DOES NOT contain digits"\D"
\sReturns a match where the string contains a white space character"\s"
\SReturns a match where the string DOES NOT contain a white space character"\S"
\wReturns a match where the string contains any word characters (characters from a to Z, digits from 0-9, and the underscore _ character)"\w"
\WReturns a match where the string DOES NOT contain any word characters"\W"
\ZReturns a match if the specified characters are at the end of the string"Spain\Z"

汇合是一对方括号[]内的一组字符,具备非凡含意

SetDescription
[arn]Returns a match where one of the specified characters (a, r, or n) is present
[a-n]Returns a match for any lower case character, alphabetically between a and n
1Returns a match for any character EXCEPT a, r, and n
[0123]Returns a match where any of the specified digits (0, 1, 2, or 3) are present
[0-9]Returns a match for any digit between 0 and 9
0-5Returns a match for any two-digit numbers from 00 and 59
[a-zA-Z]Returns a match for any character alphabetically between a and z, lower case OR upper case
[+]In sets, +, *, ., `, (), $,{} has no special meaning, so [+] means: return a match for any +` character in the string

findall()函数的作用是:返回一个蕴含所有匹配项的列表。

import retxt = "The rain in Spain"x = re.findall("ai", txt)print(x)

该列表按找到的程序蕴含匹配项。
如果未找到匹配项,则返回空列表

import retxt = "The rain in Spain"x = re.findall("Portugal", txt)print(x)

search()函数的作用是:在字符串中搜寻匹配项,如果存在匹配项,则返回匹配对象。

import retxt = "The rain in Spain"x = re.search("\s", txt)print("The first white-space character is located in position:", x.start())

split()函数的作用是:返回一个列表,其中字符串在每次匹配时被拆分

import retxt = "The rain in Spain"x = re.split("\s", txt)print(x)

能够通过指定maxsplit参数来管制呈现次数

import retxt = "The rain in Spain"x = re.split("\s", txt, 1)print(x)

sub()函数的作用是:用您抉择的文本替换匹配项

import retxt = "The rain in Spain"x = re.sub("\s", "9", txt)print(x) # The9rain9in9Spain

您能够通过指定count参数来管制替换的数量

import retxt = "The rain in Spain"x = re.sub("\s", "9", txt, 2)print(x)

匹配对象是蕴含无关搜寻和后果的信息的对象。

留神:如果没有匹配,将返回值None,而不是match对象。

.span()返回蕴含匹配的开始地位和完结地位的元组。

import retxt = "The rain in Spain"x = re.search(r"\bS\w+", txt)print(x.span()) # (12, 17)

.string 返回传递到函数中的字符串

import retxt = "The rain in Spain"x = re.search(r"\bS\w+", txt)print(x.string) # The rain in Spain

.group() 返回字符串中存在匹配项的局部

import retxt = "The rain in Spain"x = re.search(r"\bS\w+", txt)print(x.group()) # Spain

  1. arn ↩