版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
SSM框架应用于沈工高职考试系统的设计与实践第2章Python基础知识编码规范2.12注释1代码缩进代码缩进:一行代码开始前的空白区域,表达程序的格式框架
-严格明确:缩进是语法的一部分,缩进不正确程序运行错误-所属关系:表达代码间包含和层次关系的唯一手段
-长度一致:程序内一致即可,一般用4个空格或1个TAB,不建议混用
2.1.1代码缩进是不被程序执行的辅助性说明信息
注释
2.1.2注释变量2.22数据类型1标识符和关键字3变量赋值2.2.1标识符和关键字标识符:
开发人员在程序中自定义的符号和名称,例如变量名、函数名、类名等标识符的命名规则是:使用字母、数字、下划线及其组合作为标识符名称。单个小写字母,如i、j单个大写字母,如A、B多个小写字母,如student多个大写字母,如STUDENT下划线分隔多个单词,如st_num、ST_NUM大写词(驼峰命名),如StudentNum注意:大小写敏感、首字符不能是数字、不与Python自有关键字(保留字)相同其中最常用的是单词命名的方式和驼峰命名的方式。命名规则2.2.1标识符和关键字
关键字(保留字):
被编程语言内部定义并保留使用的标识符2.2.1标识符和关键字-Python3.12有如下35个保留字。-保留字是编程语言的基本单词,大小写敏感
if
是保留字,If是变量
FalseclassfromorNonecontinueglobalpassTruedefifraiseanddelimportreturnaselifintryassertelseiswhileasyncexceptlambdawithawaitfinallynonlocalyieldbreakfornot
2.2.1标识符和关键字
关键字(保留字):
数字类型组合数据类型整型浮点型布尔型复数类型字符串列表元组字典集合数据类型2.2.2数据类型-整数:数学中的整数
32或者-892.2.2数据类型
数字类型:
-浮点数:数学中的实数,带有小数部分
1.8或者-1.8或者-1.0-复数:实部+虚部5+2j布尔型:只有True和False两个取值布尔类型可以和数字类型之间转换布尔类型
数字类型:True1,False0数字类型
布尔类型:0False,其余True2.2.2数据类型
数字类型:
组合数据类型序列类型字符串由0个(或多个)字符组成的集合'Python',
"Python3.7",
"I'mateacher"列表由0个(或多个)元素组成的集合[25,
'car',
'黎明',[20,
'peter'],'car']元组由0个(或多个)不同元素组成的集合(25,
'car',
'黎明',[20,
'peter'])映射类型字典由0个(或多个)键值对组成的集合dict1={'name':'李明',
'age':20,
'性别':'男'}集合类型集合多个元素的无序组合{1,
“李明”,True}2.2.2数据类型
组合数据类型:
变量:程序中用于保存和表示数据的占位符号变量命名规则遵循标识符的命名规则。str、radius、area是变量名字。2.2.3变量赋值与其他编程语言不同,Python没有声明变量的命令,首次为其赋值时,才会创建变量。可以使用等号(=)向变量赋值或修改值,=被称为赋值符号变量使用前必须赋值赋值基本语法:变量=数值变量在内存中存放数值的引用变量赋值2.2.3变量赋值基本的输入/输出2.32print函数1input函数3eval函数input()是Python标准函数库中的函数,主要作用是获取用户从控制台输入的数据,并以字符串的形式将其结果返回。变量=input(<提示信息>)示例如下:str=input("请输入:");print("你输入的内容是:",str)2.3.1input函数打印字符串print()函数可以直接打印字符串格式化输出print()函数可以将变量与字符串组合,按照一定格式输出组合后的字符串。print()是Python标准函数库中的基本函数,主要作用是在控制台上输出信息。2.3.2print函数不换行输出print()函数将信息输出到控制台后会自动换行,控制台中的光标会出现在输出信息的下一行。如果希望print()函数打印信息后不换行,可以通过设置print()函数的end参数修改结束标志。2.3.2print函数更换间隔字符默认情况下,print()函数一次性输出的两个字符串使用空格分隔。示例如下:>>>str1="Hello">>>str2="World">>>print(str1,str2)HelloWorld使用参数sep可以修改间隔字符。具体示例如下:>>>print(str1,str2,sep=':')Hello:World2.3.2print函数eval()函数是Python标准函数库中一个十分重要的函数,eval()函数的作用去掉参数最外侧引号并执行余下语句的函数。eval()函数的基本使用格式:eval(<字符串或字符串变量>)
1.>>>eval("1")3.>>>eval('"1+2"')
2.>>>eval("1+2")4.>>>
eval('print("Hello")')
1.>>>eval("1")3.>>>eval('"1+2"')
1
'1+2'
2.>>>eval("1+2")4.>>>
eval('print("Hello")')
3Hello
2.3eval函数案例2:球员身高转换2.4举个例子Forexample案例代码Case2_1.py案例2:球员身高转换身高单位in(英寸)和cm(厘米)1in=2.54cm运用运算符*和/进行换算注意计算结果格式化输出数字类型的运算2.52运算符优先级1运算符类型3数字类型转换2.5.1运算符类型按功能划分算术运算符赋值运算符比较运算符逻辑运算符成员运算符身份运算符1算术运算符以操作数n=7,m=2为例,算术运算符的功能说明及示例如表所示。符号含义操作说明举例+加两个操作数相加,得到操作数的和n+m,结果为9-减两个操作数相减,得到操作数的差n-m,结果为5*乗两个操作数相乘,得到操作数的积n*m,结果为14/除两个操作数相除,得到操作数的商n/m,结果为3.5%取余两个操作数相除,得到余数n%m,结果为1//整除两个操作数相除,得到商的整数部分n//m,结果为3**幂两个操作数进行幂运算,得到n的m次幂n**m,结果为492.5.1运算符类型算数运算符支持相同类型数据运算,也支持不同类型数据进行混合运算,python会强制将数据进行临时类型转换,转换规则如下:(1)布尔类型进行算术运算时,将其视为数值0和1。(2)整型与浮点型进行混合运算时,将整型转化为浮点型。(3)其他类型与复数运算时,将其他类型转换为复数类型。2.5.1运算符类型1算术运算符赋值运算符的作用是将一个表达式或对象赋给一个左值,以操作数n=7,m=2为例,算术运算符的功能说明及示例如表所示。符号含义操作说明举例=等将右值赋给左值n=m,n为7+=加等将左值加上右值赋给左值n+=m,n为9-=减等将左值减去右值赋给左值n-=m,n为5*=乘等将左值乘以右值赋给左值n*=m,n为14/=除等将左值除以右值赋给左值n/=m,n为3.5%=取余等将左值除以右值的余数赋给左值n%=m,n为1//=整除等将左值整除右值的商的整数部分赋给左值n//=m,n为3**=幂等将左值的右值次幂的结果赋给左值n**=m,n为492.5.1运算符类型2赋值运算符比较运算符的功能是比较它两边的操作数,以判断操作数之间的关系,以操作数n=7,m=2为例,比较运算符的功能说明及示例如表所示。符号操作说明举例==比较左值和右值,若两者相同则为True,否则为Falsen==m不成立,结果为False!=比较左值和右值,若两者不相同则为True,否则为Falsen!=m成立,结果为True>
比较左值和右值,若左值大于右值则为True,否则为Falsen>m成立,结果为True<
比较左值和右值,若左值小于右值则为True,否则为Falsea<b不成立,结果为False>=比较左值和右值,若左值大于或等于右值则为True,否则为Falsen>=m成立,结果为True<=比较左值和右值,若左值小于或等于右值则为Tue,否则为Falsen<=m不成立,结果为False2.5.1运算符类型3比较运算符Python中逻辑运算符包括与(and)、或(or)、非(not)三种。>>>8-4orNone#左操作数是表达式,其布尔值为True4>>>5-5and70>>>not(2+3)False2.5.1运算符类型4逻辑运算符5成员运算符主要功能是判断给定值是否在序列中,其中序列包括列表、元组、字符串等。成员运算符分为两种,分别是in和notin,其功能分别如下:(1)in:如果指定元素在序列中,返回True,否则返回False。(2)notin:如果指定元素不在序列中,返回True,否则返回False。>>>str1="goodmorning">>>'good'instr1 #'good'是否在str1中True2.5.1运算符类型5成员运算符Python中的身份运算符为:is和isnot。用于判断两个对象的内存地址是否相同,其功能分别如下:(1)is:测试两个对象的内存地址是否相同,相同返回True,否则返回False。(2)isnot:测试两个对象的内存地址是否不同,不同返回True,否则返回False。>>>n=36#定义变量n>>>m=n#将n引用的内存地址赋值给m>>>nism#此时n和m引用的内存地址一样True2.5.1运算符类型6身份运算符运算符功能**指数~按位取反+a-b正负号*
/
%乘法、除法、取余+
-加法、减法<<
>>按位左移、按位右移&按位与^按位异或|按位或<
>
<=
>=
!=
==比较is
isnot身份测试in
notin成员测试not布尔“非”and布尔“与”or布尔“或”2.5.2运算符优先级数字间进行转换的函数有float()、int()、bool()、complex(),如表所示。函数名称函数功能float()将整型和符合数值类型规范的字符串转换为浮点型int()将浮点型、布尔类型和符合数值类型规范的字符串转换为整型bool()将任意类型转换为布尔类型complex()将其他数值类型或符合数值类型规范的字符串转换为复数类型2.5.3数字类型转换1常用函数2.5.3数字类型转换2例子案例3:体脂率计算举个例子Forexample案例代码Case2_2.py案例3:体脂率计算身体质量指数(BMI)计算公式:BMI=体重(kg)/(身高*身高)(m2)体脂率计算公式:
体脂率=1.2*BMI+0.23*年龄
–5.4-10.8*性别
(男:1,女:0)体脂率正常范围:男(15%~18%)女(25%~28%)模块1:math库2.6math模块是Python提供的内置数学模块,因为复数类型常用于科学计算,一般计算并不常用,因此math库不支持复数类型,仅支持整数和浮点数运算。math模块一共提供4个数学常数和44个函数。2.6.1math库简介44个函数共分为4类,包括:16个数值表示函数8个幂对数函数16个三角对数函数4个高等特殊函数。库的引用库的引用有三种方式:方式1:import<库名>调用方式:<库名>.<函数名>()2.6.1math库简介方式2:from<库名>import<函数名>调用方式:<函数名>()方式3:from<库名>import*调用方式:<函数名>()常数数学表示具体说明math.piπ圆周率,具体数值为3.1415926536math.ee自然对数,值为2.7182818285math.inf∞正无穷大,负无穷大为-malh.inf(-∞)math.nan
非浮点数标记,值为NaNmath模块提供了4个常数,分别是pi、e、inf和nan。2.6.2常数1数值表示函数数学中除了基本的运算以外,还支持一些特殊运算,比如求绝对值、阶乘、最大公约数等,以下列出部分函数。函数名称数学符号功能描述math.fmod(x,y)x%y返回x与y的模math.fabs(x)|x|返回x的绝对值math.fsum([x,y,...])x+y+…浮点数精确求和math.ceil(x)
向上取整,返回不小于x的最小整数math.modf(x)
返回x的小数和整数部分math.factorial(x)x!返回x的阶乘,如果x是小数或负数,返回ValueErrormath.gcd(a,b)
返回a与b的最大公约数math.floor(x)
向下取整,返回不大于x的最大整数2.6.3常用函数常用三角函数如下:函数名称数学符号功能描述math.sin(x)sinx返回x的正弦函数值math.cos(x)cosx返回x的余弦函数值math.tan(x)tanx返回x的正切函数值math.asin(x)arcsinx返回x的反正弦函数值math.acos(x)arccosx返回x的反余弦函数值math.atan(x)arctanx返回x的反正切函数值math.degrees(x)
角度x的弧度值转角度值math.radians(x)
角度x的角度值转弧度值math.atan2(y,x)arctany/x返回y/x的反正切函数值2.6.3常用函数2三角函数函数名称数学符号功能描述math.sqrt(x)返回x的平方根math.exp(x)Ex返回e的x次幂,e是自然对数math.expml(x)ex-1返回e的x次幂减1math.pow(x,y)Xy返回x的y次幂math.log(x[,base])Logbasex返回x的对数值,只输入x时,返回自然对数,即lnxmath.log1p(x)ln(1+x)返回1+x的自然对数值math.log2(x)Log2x返回x的以2为底的对数值math.log10(x)Log10x返回x的以10为底的对数值2.6.3常用函数3幂函数和对数函数4函数名称功能描述math.erf(x)高斯误差函数,应用于概率论、统计学等领域math.erfc(x)余补高斯误差函数math.gamma(x)伽玛函数,也叫欧拉第二积分函数math.lgamma(x)伽玛函数的自然对数函数查询方式:2.6.3常用函数4高等特殊函数案例4:积跬步以至千里,
积懈怠以至深渊!2.7举个例子Forexample案例代码Case2_3.py案例4:积跬步以至千里,积懈怠以至深渊!每天进步一点点,一年能进步多少?每天退步一点点,一年会退步多少?
一年进步或者退步计算方法:
进步:(1+0.01)365
退步:(1-0.01)365在math库中,使用幂函数power()进行计算:
math.power(x,y),x表示1.01(或0.99),y表示365字符串类型及操作2.83字符串操作符1字符串的表示方式5字符串内置处理方法4字符串处理函数2字符串切片处理6字符串类型的格式化字符串有2类共4种表示方法
-由一对单引号或双引号表示,仅表示单行字符串
"请输入带有符号的温度值:"或者'C'2.8.1字符串的表示方式
-由一对三单引号或三双引号表示,可表示多行字符串
'''Python
语言'''"""
案例:积跬步以至千里,积懈怠以至深渊!技术:采用math.pow()实现"""问题:1、如果字符串中存在单引号(‘)或者双引号(“)如何处理?‘我是字符串,我包含双引号(“)’或者“我是字符串,我单引号(’)”2.8.1字符串的表示方式2、如果字符串既有单引号(‘)又有双引号(“)如何处理?'''我是字符串,我包括单引号(')和双引号(")'''"""我是字符串,我包括单引号(')和双引号(")"""正向递增序号和反向递减序号
正向递增序号
0
1
2
3
4
5
6
7
8
9
10
-11
-10
-9
-8
-7
-6
-5
-4
-3
-2
-1
反向递减序号
HELLOWORLD:2.8.2字符串切片处理1字符串的序号2字符串的索引-基本格式:
返回字符串中单个字符<字符串>[M],或<字符串变量>[M]案例: TempStr=“35.69C”
“HELLOWORLD:"[0]或者TempStr[-1]使用[序号]获取字符串中一个字符的过程,称之为索引的过程2.8.2字符串切片处理3字符串的切片切片是指对操作的对象截取其中一部分(多个字符)的操作,字符串、列表、元组都支持切片操作。字符串切片的基本语法格式如下:<字符串>或字符串变量[起始:结束:步长]<字符串>[M:N:K]
M:切片开始位置,缺少表示从头开切N:切片结束位置,缺少表示切到结尾
K:步长,可省切片选取区间属于左闭右开型2.8.2字符串切片处理案例1:“HELLOWORLD:"[1:8]案例2:“HELLOWORLD:"[:8]案例3:“HELLOWORLD:"[1:]案例4:“HELLOWORLD:"[1:9:2]
'ELLOWOR'
'HELLOWOR'
'ELLOWORLD:'
'ELWR'2.8.2字符串切片处理字符串的切片3案例:
根据<字符串>[M:N:K]的切片处理规则,计算"HELLOWORLD"[::-1]分析:
1.M、N没有给出,范围从字符串开头
结尾 2.K为-1,即步长为1,从结尾向前一次取出
结果是:字符串求倒序
“DLROWOLLEH"2.8.2字符串切片处理字符串的切片3案例分析通过输入的数字,获取星期字符串输入:1-7的整数,表示星期几输出:输入整数对应的星期字符串例如:输入3,输出星期三2.8.2字符串切片处理字符串的切片3案例weekStr="星期一星期二星期三星期四星期五星期六星期日“weekId=eval(input("请输入星期数字(1-7):"))pos=(weekId-1)*3#计算星期起始位置print(weekStr[pos:pos+3])WeekNamePrintV1.py2.8.2字符串切片处理字符串的切片3改进案例weekStr="一二三四五六日"weekId=eval(input("请输入星期数字(1-7):"))print(“星期”+weekStr[weekId-1])WeekNamePrintV2.py2.8.2字符串切片处理字符串的切片3转义符表达特定字符的本意
“这里有个双引号(\”)”结果为这里有个双引号(”)转义符形成一些组合,表达一些不可打印的含义
"\b"回退
"\n"换行(光标移动到下行首)
"\r"回车(光标移动到本行首)
2.8.2字符串切片处理转义符4操作符功能案例x+y连接两个字符串x与yx*n复制n次字符串xxins如果x是s的子串,返回True,
否则返回Falsestr[i]索引,返回第i个字符str[N,M]切片,返回索引第N到M个字符的字串,其中不包含M2.8.3字符串操作符函数功能len(x)返回字符串x的长度len(“你好China”)结果为:python中:数字、标点符号、英文、汉字长度相同,都为1str(x)返回任意类型x所对应的字符串形式str(1.23)结果为:与eval函数功能相反hex(x)或oct(x)返回整数x对应十六进制或八进制数的小写形式字符串hex(425)
结果为“0x1a9”oct(425)结果为“0o651”chr(u)u为Unicode编码,返回u对应的单字符
ord(x)返回单字符对应的Unicode编码2.8.4字符串处理函数7“1.23”Unicode编码Python字符串的编码方式-统一字符编码,即覆盖几乎所有字符的编码方式
-从0到1114111(0x10FFFF)空间,每个编码对应一个字符
-Python字符串中每个字符都是Unicode编码字符
2.8.4字符串处理函数Python语言中,所有数据类型都采用面向对象方式实现每种数据类型被封装为一个类内置方法即类中的函数,对数据类型的具体操作。调用方式:字符串名.方法();2.8.5字符串内置处理方法函数功能str.lower()或str.upper()返回字符串的副本,全部字符小写/大写
"AbCdEfGh".lower()结果为str.split(sep=None)返回一个列表,由str根据sep被分隔的部分组成
"A,B,C".split(",")结果为str.count(sub)返回子串sub在str中出现的次数
"anappleaday".count("a")结果为需要掌握字符串内置处理方法,7组:"abcdefgh"['A','B','C']42.8.5字符串内置处理方法函数功能str.replace(old,new)返回字符串str副本,所有old子串被替换为new
"python".replace("n","n123.io")结果为
str.center(width[,fillchar])字符串str根据宽度width居中,fillchar可选
"python".center(20,"=")结果为
str.strip(chars)从str中去掉在其左侧和右侧chars中列出的字符
"=python=".strip("=np")结果为
str.join(iter)在iter变量除最后元素外每个元素后增加一个str
",".join("12345")结果为
"python123.io"'=======python======='"ytho""1,2,3,4,5"#主要用于字符串分隔等2.8.5字符串内置处理方法{}表示槽,后续变量填充到槽中{:.2f}表示将变量area填充到这个位置时取小数点后2位
2.8.6字符串类型的格式化1格式化输出方式1:使用format()方法对字符串格式化多个变量输出时,使用多个{}占位,format()方法多个参数之间逗号间隔。槽内部对格式化的配置{<参数序号>:<格式控制标记>}
案例:print(“我的买了{0:*^20,.1f}公斤白菜".format(7981.58))结果:我的买了******7,981.6*******公斤白菜格式化输出方式1:使用format()方法对字符串格式化2.8.6字符串类型的格式化1<类型>:表示输出整型和浮点数的格式规则整型输出格式:浮点型输出格式:d输出整数的十进制数b输出整数的二进制数c输出整数对应的Unicode字符o输出整数的八进制数x输出整数的小写十六进制数X输出整数的大写十六进制数f输出浮点数标准浮点形式%输出浮点的百分形式e输出浮点对应小写字母e的指数形式E输出浮点对应大写字母E的指数形式格式化输出方式1:使用format()方法对字符串格式化2.8.6字符串类型的格式化1字符串format()方法的基本使用格式语法如下:<模板字符串>.format(<逗号分隔的参数>)>>>"亲爱的{}你好!你{}月的话费是{}元,余额是{}元。".format("李晓明",3,88.5,52.25)'亲爱的李晓明你好!你3月的话费是88.5元,余额是52.25元。'格式化输出方式1:使用format()方法对字符串格式化A.顺序格式2.8.6字符串类型的格式化1B.使用数字标识参数顺序,从0开始格式化输出方式1:使用format()方法对字符串格式化2.8.6字符串类型的格式化1C.使用变量名标识案例:print("亲爱的{name}你好!你{month}月的话费是{number}元,余额是{number1}元。".format(month=3,name="李晓明",number=88.5,number1=52.25))结果:'亲爱的李晓明你好!你3月的话费是88.5元,余额是52.25元。'格式化输出方式1:使用format()方法对字符串格式化2.8.6字符串类型的格式化1案例:按要求输出姓名、性别、身高和年龄1、姓名居中显示,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年电除颤培训模拟试题(含答案)
- 职业技能训练师QC管理竞赛考核试卷含答案
- 2026年软件工程师专业职业资格考试模拟题及答案详解
- 2026年护理中级模拟试题模拟试卷及答案详解
- 2026年湖南导游模拟试题(含答案)
- 脱酚工保密意识水平考核试卷含答案
- 2026年河南中招理化模拟试题(含答案)
- 2026年外交翻译模拟题及答案详解
- 2026年班主任基本功大赛模拟试题(含答案)
- 2026年国开建筑材料a机模拟试卷(含答案)
- 写字姿势和执笔方法
- 肿瘤患者的心理护理:营养与心理支持
- 政府专职消防文员理论题库有答案
- 研究会内部管理制度
- 七年级上册 第四单元 写作《思路要清晰》课件 (共23张)
- 舞台剧小剧场运营手册
- 燃气施工中常见问题及解决措施
- 档案数字化加工保密管理规定制度
- 2026年中国航空传媒有限责任公司市场化人才招聘备考题库及答案详解(易错题)
- 《环境科学与工程导论》课件-第8章土壤污染及其控治
- 2024年成都大邑县总工会招聘真题
评论
0/150
提交评论