关于python:Python入门系列八日期时间数学json

9次阅读

共计 5324 个字符,预计需要花费 14 分钟才能阅读完成。

日期工夫

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

import datetime

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

日期输入

import datetime

x = datetime.datetime.now()

print(x.year)
print(x.strftime("%A"))

创立日期对象

import datetime

x = datetime.datetime(2020, 5, 17)

print(x)

strftime()办法

import datetime

x = datetime.datetime(2018, 6, 1)

print(x.strftime("%B"))
Directive Description Example
%a Weekday, short version Wed
%A Weekday, full version Wednesday
%w Weekday as a number 0-6, 0 is Sunday 3
%d Day of month 01-31 31
%b Month name, short version Dec
%B Month name, full version December
%m Month as a number 01-12 12
%y Year, short version, without century 18
%Y Year, full version 2018
%H Hour 00-23 17
%I Hour 00-12 05
%p AM/PM PM
%M Minute 00-59 41
%S Second 00-59 08
%f Microsecond 000000-999999 548513
%z UTC offset +0100
%Z Timezone CST
%j Day number of year 001-366 365
%U Week number of year, Sunday as the first day of week, 00-53 52
%W Week number of year, Monday as the first day of week, 00-53 52
%c Local version of date and time Mon Dec 31 17:41:00 2018
%C Century 20
%x Local version of date 12/31/18
%X Local version of time 17:41:00
%% A % character %
%G ISO 8601 year 2018
%u ISO 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 math

x = math.sqrt(64)

print(x)

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

import math

x = math.ceil(1.4)
y = math.floor(1.4)

print(x) # returns 2
print(y) # returns 1

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

import math

x = math.pi

print(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)等价物

Python JSON
dict Object
list Array
tuple Array
str String
int Number
float Number
True true
False false
None null

格式化后果

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

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

正则表达式函数

Function Description
findall Returns a list containing all matches
search Returns a Match object if there is a match anywhere in the string
split Returns a list where the string has been split at each match
sub Replaces one or many matches with a string

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

Character Description Example
[] 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

非凡序列

Character Description Example
\A Returns a match if the specified characters are at the beginning of the string “\AThe”
\b Returns 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”
\B Returns 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”
\d Returns a match where the string contains digits (numbers from 0-9) “\d”
\D Returns a match where the string DOES NOT contain digits “\D”
\s Returns a match where the string contains a white space character “\s”
\S Returns a match where the string DOES NOT contain a white space character “\S”
\w Returns a match where the string contains any word characters (characters from a to Z, digits from 0-9, and the underscore _ character) “\w”
\W Returns a match where the string DOES NOT contain any word characters “\W”
\Z Returns a match if the specified characters are at the end of the string “Spain\Z”

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

Set Description
[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
1 Returns 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-5 Returns 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 re

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

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

import re

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

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

import re

txt = "The rain in Spain"
x = re.search("\s", txt)

print("The first white-space character is located in position:", x.start())

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

import re

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

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

import re

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

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

import re

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

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

import re

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

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

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

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

import re

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

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

import re

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

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

import re

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

  1. arn ↩
正文完
 0