当前位置: 首页 > 后端技术 > Python

Python入门系列(8)日期时间、数学、json

时间:2023-03-26 02:08:25 Python

日期时间Python中的日期本身并不是一种数据类型,但是我们可以引入一个名为datetime的模块,将日期作为日期对象来使用。importdatetimex=datetime.datetime.now()print(x)日期输出importdatetimex=datetime.datetime.now()print(x.year)print(x.strftime("%A"))创建日期对比importdatetimex=datetime.datetime(2020,5,17)print(x)strftime()方法importdatetimex=datetime.datetime(2018,6,1)print(x.strftime("%B"))DirectiveDescriptionExample%aWeekday,shortversionWed%AWeekday,完整版Wednesday%wWeekdayasanumber0-6,0isSunday3%dDayofmonth01-3131%bMonthname,shortversionDec%BMonthname,fullversionDecember%mMonthasanumber01-1212%yYear,shortversion,withoutcentury18%YYear,完整版2018%HHour00-2317%IHour00-1205%pAM/PMPM%MMinute00-5941%SSecond00-5908%fMicrosecond000000-999999548513%zUTCoffset+0100%ZTimezoneCST%jDaynumberofyear001-36636%U年中的周数,星期日为一周的第一天,00-5352%W年中的周数,周一为一周的第一天,00-5352%c日期时间的本地版本MonDec3117:41:002018%CCentury20%xLocalversionofdate12/31/18%XLocalversionoftime17:41:00%%A%character%%GISO8601year2018%uISO8601weekday(1-7)1数学min()和max()函数可用于findavailableThelowestorhighestvalueinaniterationx=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)#返回4的3次方的值(同as4*4*4)x=pow(4,3)print(x)mathmoduleimportmathx=math.sqrt(64)print(x)ceil()方法将数字四舍五入到最接近的整数,然后执行数学运算。floor()方法将数字向下舍入到最接近的整数并返回结果importmathx=math.ceil(1.4)y=math.floor(1.4)print(x)#returns2print(y)#returns1piconstant,returnspi的值(3.14...)importmathx=math.piprint(x)JSON从JSON转换为Pythonimportjson#someJSON:x='{"name":"John","age":30,"city":"NewYork"}'#parsex:y=json.loads(x)#结果是一个Python字典:print(y["age"])ConvertfromPythontoJSONimportjson#aPythonobject(dict):x={"name":"John","age":30,"city":"NewYork"}#转换成JSON:y=json.dumps(x)#结果是一个JSON字符串:print(y)您可以将以下类型的Python对象转换为JSON字符串。当你从Python转换为JSON时,Python对象被转换为JSON(JavaScript)等价物(x,indent=4)你还可以定义分隔符,默认值为(",",":",表示将每个对象分开带逗号和空格,键和值带冒号和空格json.dumps(x,indent=4,separators=(".","="))json_dumps()方法有参数对resu中的key进行排序json.dumps(x,indent=4,sort_keys=True)正则表达式Python内置了一个包叫re,可以用来处理正则表达式importre正则表达式函数描述findall返回一个包含所有匹配项的列表search如果字符串中的任何位置存在匹配项则返回一个Match对象split返回一个列表,其中字符串在每个匹配项处被拆分sub用一个字符串替换一个或多个匹配项字符符是具有特殊含义的字符符CharacterDescriptionExample[]一组字符[a-m]”\表示特殊序列(也可用于转义特殊字符)”\d”。任何字符(换行符除外)“he..o”^以“^开头hello"$以"planet$"结尾*零次或多次出现"he.*o"+一次或多次出现"he.+o"?零次或一次出现"he.?o"{}正好是指定的出现次数"he.{2}o"\Eitheror"falls\stays"()Captureandgroup特殊顺序CharacterDescriptionExample\A如果指定的字符在字符串的开头则返回匹配"\AThe"\b返回指定的匹配字符位于单词的开头或结尾(开头的“r”确保字符串是ingtreatedasa"rawstring")r"\bain"r"ain\b"\B返回指定字符存在的匹配项,但不在单词的开头(或结尾)("r"开始时确保字符串被视为“原始字符串”)r"\Bain"r"ain\B"\d返回字符串包含数字(0-9的数字)"\d"的匹配项\DReturnsamatchwherethestringDOESNOTcontaindigits"\D"\sReturnsamatchwherethestringcontainsawhitespacecharacter"\s"\SReturnsamatchwherethestringDOESNOTcontainawhitespace字符"\S"\w返回字符串包含任何单词字符(从a到Z的字符、0-9的数字和下划线_字符)的匹配"\w"\W返回字符串不包含任何单词字符的匹配"\W"\Z如果指定的字符在字符串的末尾则返回一个匹配"Spain\Z"集合是一个对方抽号[]内的一组字符符,具有特殊含义SetDescription[arn]返回一个匹配,其中一个指定的字符(a、r或n)存在[a-n]返回任何小写字符的匹配项,按字母顺序在a和n1之间返回任何字符的匹配项,除了a、r和n[0123]返回任何指定数字(0、1、2)的匹配项,或3)存在[0-9]返回0到90-5之间任何数字的匹配返回00到59之间任何两位数字的匹配[a-zA-Z]返回按字母顺序排列的任何字符之间的匹配aandz,lowercaseORuppercase[+]集合中,+,*,.,`,(),$,{}没有特殊意义,所以[+]的意思是:返回匹配中任意+`字符stringfindall()函数的作用是:返回所有匹配项的列表找到的项目。如果未找到匹配项,则返回一个空列表,如果匹配则返回一个匹配对象。importretxt="西班牙的雨"x=re.search("\s",txt)print("第一个空白字符位于位置:",x.start())split()functionYes:返回一个列表,其中字符串在每次匹配时被分割importretxt="TheraininSpain"x=re.split("\s",txt,1)print(x)sub()函数的作用是:将匹配项替换为您选择的文本importretxt="TheraininSpain"x=re.sub("\s","9",txt)print(x)#The9rain9in9Spain可以通过指定count参数来控制换人次数importretxt="TheraininSpain"x=re.sub("\s","9",txt,2)print(x)匹配对象是包含有关搜索和结果的信息的对象。注意:如果没有匹配项,将返回值None而不是匹配对象。.span()返回一个包含匹配开始和结束位置的元组。importretxt="TheraininSpain"x=re.search(r"\bS\w+",txt)print(x.span())#(12,17).string返回传递给函数的字符串importretxt="TheraininSpain"x=re.search(r"\bS\w+",txt)print(x.string)#TheraininSpain.group()返回字符串中匹配import的部分retxt="西班牙的雨"x=re.search(r"\bS\w+",txt)print(x.group())#Spainrn?