版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Python环境搭建Python物联网什么是PythonPython可应用于多平台windows
MacOSXLinuxPython安装Window平台安装Python:
以下为在
Window平台上安装Python的简单步骤:打开WEB浏览器访问/downloads/windows/Python安装下载后,双击下载包,进入Python安装向导,安装非常简单,你只需要使用默认的设置一直点击"下一步"直到安装完成即可。1.双击下载好的安装包2.选择自定义安装3.可选功能默认全选4.修改安装路径(一定要记得这个路径)环境变量配置1.右键点击“计算机”/“此电脑”--"属性"2然后点击"高级系统设置"3选择“环境变量”—“系统变量”环境变量配置win7win104选择“系统变量”窗口下面的“Path”,添加安装路径ps:记住,路径直接用分号";"隔开!环境变量配置5验证Win+R快捷键打开运行窗口,输入cmd,点击“确定”窗口打开后直接输入“python”指令,可查看到版本说明配置成功常用Python编译器SublimeTextIDLEVIMPyCharm常用编译器比较SublimeText,比较适合Python新手使用,支持跨平台,各种语法高亮和代码补全(适合新手)IDLE
Pyhton自带的一款编辑器VIM脱离鼠标,键盘操作,不足之处,需要一定的学习成本PyCharm
与IntelijIDEA(java常用的开发环境)出自同一家公司,很多大公在用PyCharm。专业版需要花钱购买。(企业使用较多)Python编译器运行Python集成开发环境(IDE:IntegratedDevelopmentEnvironment):PyCharmPyCharm是由JetBrains打造的一款PythonIDE,支持macOS、Windows、Linux系统。PyCharm功能:调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制等等PyCharm下载地址:
/pycharm/download/PyCharm安装地址:/w3cnote/pycharm-windows-install.html运行Python控制台输出代码编辑工程目录Python应用平台Python的安装Python的下载环境变量配置及Python运行Python变量类型江苏电子职业学院Python物联网变量来源于数学,是计算机语言中能储存计算结果或能表示值的抽象概念。而变量中存放的不同的值具有不同的数据类型,决定数据的意义以及可以在数据上执行的操作。简介标准数据类型ACDEFNumbers(数字)此处添加详细文本描述,建议与标题相关并符合整体语言风格。List(列表)此处添加详细文本描述,建议与标题相关并符合整体语言风格。Dictionary(字典)此处添加详细文本描述,建议与标题相关并符合整体语言风格。String(字符串)此处添加详细文本描述,建议与标题相关并符合整体语言风格。Tuple(元组)此处添加详细文本描述,建议与标题相关并符合整体语言风格。Cset(集合)Python数字01030402int(长整型)此处添加详细文本描述,建议与标题相关并符合整体语言风格。float(浮点型)整体语言风格。Bool(True或False)complex(复数)此处添加详细文本描述,建议与标题相关并符合整体语言风格。a=20
print(type(a))
print(isinstance(a,int))<class'int'>Trueprint(True==1)
print(False==0)
print(True+1)
print(False+1)TrueTrue21变量命名标识符变量的命名规则Python标识符字符串规则和C语言相似:第一个字符必须是字母或下划线(_)剩下的字符可以是字母和数字或下划线大小写敏感见名知意驼峰命名法在程序员中还有一种命名法比较流行,就是用下划线“_”来连接,如:send_buf小驼峰式命名法(lowercamelcase):第一个单词以小写字母开始;第二个单词的首字母大写,例如:myName、aDog大驼峰式命名法(uppercamelcase):每一个单字的首字母都采用大写字母,例如:FirstName、LastName变量赋值Python中的变量赋值不需要类型声明。#!/usr/bin/python
#-*-coding:UTF-8-*-
counter
=100
#赋值整型变量
miles
=1000.0
#浮点型
name
="John"
#字符串
counter
miles
name变量名=存储在变量中的值每个变量在内存中创建,都包括变量的标识,名称和数据这些信息。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。多个变量赋值Python允许你同时为多个变量赋值:a=b=c=1以上实例,创建一个整型对象,值为1,三个变量被分配到相同的内存空间上。也可以为多个对象指定多个变量:a,b,c=1,2,"john"以上实例,两个整型对象1和2分别分配给变量a和b,字符串对象"john"分配给变量c。Python标准数据类型Python变量命名Python变量分类Python变量赋值Python运算符江苏电子职业学院Python物联网运算符是用于执行程序的代码运算,可以通过给出的一或多个值来产生另一个值,运算是程序设计的基础概念Python运算符算术运算符比较(关系)运算符赋值运算符逻辑运算符位运算符成员运算符身份运算符Python语言支持以下类型的运算符:算数运算符以下假设变量
a=10,变量
b=21:运算符描述实例+加-两个对象相加a+b输出结果31-减-得到负数或是一个数减去另一个数a-b输出结果-11*乘-两个数相乘或是返回一个被重复若干次的字符串a*b输出结果210/除-x除以yb/a输出结果2.1%取模-返回除法的余数b%a输出结果1**幂-返回x的y次幂a**b为10的21次方//取整除-向下取接近商的整数>>>
9//2
4>>>
-9//2
-5比较运算符以下假设变量
a为10,变量
b为20。运算符描述实例==等于-比较对象是否相等(a==b)返回False!=不等于-比较两个对象是否不相等(a!=b)返回True>大于-返回x是否大于y(a>b)返回False<小于-返回x是否小于y。所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量True和False等价。注意,这些变量名的大写。(a<b)返回True>=大于等于-返回x是否大于等于y。(a>=b)返回False<=小于等于-返回x是否小于等于y。(a<=b)返回True赋值运算符以下假设变量
a为10,变量
b为20。运算符描述实例=简单的赋值运算符c=a+b将a+b的运算结果赋值为c+=加法赋值运算符c+=a等效于c=c+a-=减法赋值运算符c-=a等效于c=c-a*=乘法赋值运算符c*=a等效于c=c*a/=除法赋值运算符c/=a等效于c=c/a%=取模赋值运算符c%=a等效于c=c%a**=幂赋值运算符c**=a等效于c=c**a//=取整除赋值运算符c//=a等效于c=c//a:=海象运算符,可在表达式内部为变量赋值。Python3.8版本新增运算符。在这个示例中,赋值表达式可以避免调用len()两次:if
(n
:=len(a))
>
10:
print(f"Lististoolong({n}elements,expected<=10)")位运算符运算符描述&按位与运算符:参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0|按位或运算符:只要对应的二个二进位有一个为1时,结果位就为1。^按位异或运算符:当两对应的二进位相异时,结果为1~按位取反运算符:对数据的每个二进制位取反,即把1变为0,把0变为1。<<左移动运算符:运算数的各二进位全部左移若干位,由"<<"右边的数指定移动的位数,高位丢弃,低位补0。>>右移动运算符:把">>"左边的运算数的各二进位全部右移若干位,">>"右边的数指定移动的位数位运算符下表中变量a为60,b为13a,b二进制格式如:a=
0011
1100b=
0000
1101则a与b参与位运算a&b=
0000
1100
a|b=
0011
1101a^b=
0011
0001
~a=
1100
0011
a&b
0011
1100(&)
0000
1101
0000
1100位运算符下表中变量a为60,a二进制格式如:a=
0011
1100a>>2
0011
1100
00
0011
11
00补0移走右移2位之后:0000
1111
逻辑运算符运算符逻辑表达式描述实例andxandy布尔"与"-如果x为False,xandy返回x的值,否则返回y的计算值。(aandb)返回20orxory布尔"或"-如果x是True,它返回x的值,否则它返回y的计算值(aorb)返回10notnotx布尔"非"-如果x为True,返回False。如果x为False,它返回Truenot(aandb)返回False以下假设变量
a为10,变量
b为20。成员运算符运算符描述实例in如果在指定的序列中找到值返回True,否则返回False。x在y序列中,如果x在y序列中返回True。notin如果在指定的序列中没有找到值返回True,否则返回False。x不在y序列中,如果x不在y序列中返回True。a=10
list
=[1,2,3,4,5
]
if
(
a
in
list
):
("变量a在给定的列表中list中")
else:
("变量a不在给定的列表中list中")i语句表达式成立。输出结果为:变量a不在给定的列表中list中
身份运算符运算符描述实例isis是判断两个标识符是不是引用自一个对象xisy,类似
id(x)==id(y)
,如果引用的是同一个对象则返回True,否则返回Falseisnotisnot是判断两个标识符是不是引用自不同对象xisnoty
,类似
id(a)!=id(b)。如果引用的不是同一个对象则返回结果True,否则返回False。身份运算符#!/usr/bin/python3
a
=20
b
=20
if
(
a
is
b
):
("1-a和b有相同的标识")
else:
("1-a和b没有相同的标识")
if
(id(a)==id(b)):
("2-a和b有相同的标识")
else:
("2-a和b没有相同的标识")
#修改变量b的值
b
=30
if
(
a
is
b
):
("3-a和b有相同的标识")
else:
("3-a和b没有相同的标识")
if
(
a
is
not
b
):
("4-a和b没有相同的标识")
else:
("4-a和b有相同的标识")程序运行结果:1
-a和b有相同的标识
2
-a和b有相同的标识
3
-a和b没有相同的标识
4
-a和b没有相同的标识
说明:id()
函数用于获取对象内存地址。身份运算符is与==区别:is用于判断两个变量引用对象是否为同一个,==用于判断引用变量的值是否相等。>>>a=[1,2,3]
>>>b=a[:]>>>b
is
a
False
>>>b==a
True>>>a=[1,2,3]
>>>b=a>>>b
is
a
True
>>>b==a
True
b=a表示赋值,将a的引用对象赋值给b。(引用对象为同一个)b=a[:]复制,将a列表从首元素到最后一个元素复制给b。(值相同)运算符优先级运算符描述**指数(最高优先级)~+-按位翻转,一元加号和减号(最后两个的方法名为+@和-@)*/%//乘,除,求余数和取整除+-加法减法>><<右移,左移运算符&位'AND'^|位运算符<=<>>=比较运算符==!=等于运算符=%=/=//=-=+=*=**=赋值运算符isisnot身份运算符innotin成员运算符notandor逻辑运算符Python字符串定义Python字符串连接与切片Python字符串索引Python常用方法Python条件控制江苏电子职业学院Python物联网Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块概念Python条件控制开始条件条件代码块if
语句ifcondition_1:
statement_block_1elifcondition_2:
statement_block_2else:
statement_block_3Python中用
elif
代替了
elseif,所以if语句的关键字为:if–elif–else,其中elif可以有若干个。注意:1.每个条件后面要使用冒号:,表示接下来是满足条件后要执行的语句块。2.使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。3.在Python中没有switch–case语句。if
语句if
语句嵌套if
表达式1:
语句
if表达式2:
语句
elif表达式3:
语句
else:
语句
elif
表达式4:
语句
else:
语句
#!/usr/bin/python3
num=int(input("输入一个数字:"))
if
num%2==0:
if
num%3==0:
("你输入的数字可以整除2和3")
else:
("你输入的数字可以整除2,但不能整除3")
else:
if
num%3==0:
("你输入的数字可以整除3,但不能整除2")
else:
("你输入的数字不能整除2和3")运行以上程序后输入一个数字:6
你输入的数字可以整除
2
和
3
ifnum%3==0:print("你输入的数字可以整除2和3")
练习编程实现:输入一个温度(F表示华氏温度,C表示摄氏温度)输出转换后的温度。计算公式为:C=(F-32)/9*5
℉
=9×℃/5+32
Python条控制语句if语句示例if语句If语句嵌套Python循环语句江苏电子职业学院Python物联网循环循环:事物周而复始地运动和变化概念Python循环Python的循环语句有for和while。开始条件条件代码TrueFalsewhile循环while循环一般形式while
判断条件(condition):
执行语句(statements)
……
While循环同样需要注意冒号和缩进。另外,在Python中没有do..while循环while循环while循环实现1到100的总和#!/usr/bin/envpython3
sum
=0
counter=1
whilecounter<=100:sum=sum+countercounter+=1print("1到%d之和为:%d"%(n,sum))While循环#!/usr/bin/python3var=1whilevar==1:#表达式永远为true
num=int(input("输入一个数字:"))
print("你输入的数字是:",num)print("Goodbye!")无限循环while循环使用else语句while<expr>:
<statement(s)>else:
<additional_statement(s)>简单语句组flag=1while(flag):print('欢迎!')for循环for临时变量in
序列:循环满足条件时执行的代码for循环一般格式for循环使用else语句for
临时变量in序列:循环满足条件时执行的代码else:循环不满足条件时执行的代码For循环作用:遍历序列(字符串、列表、元组、字典…)for循环
range()函数>>>foriinrange(5,9):print(i)...5678>>>foriinrange(0,10,3):print(i)...
0369>>>foriinrange(5):...print(i)...01234生成数列指定区间的值(左闭右开)指定区间的,带步长for循环for循环实现1到100的总和#!/usr/bin/envpython3
sum
=0
forninrange(1,101):
sum=sum+nprint("1到100之和为:%d"%sum)Python循环for循环while循环循环应用Python循环嵌套江苏电子职业学院Python物联网Python语言允许一个循环体里面嵌套另一个循环体。概念循环嵌套4种形式for循环嵌套for循环foriterating_varinsequence:foriterating_varinsequence:statements(s)statements(s)while循环嵌套while循环whileexpression:whileexpression:statement(s)statement(s)for循环嵌套while循环foriterating_varinsequence:whileexpression:statements(s)statements(s)while循环嵌套for循环whileexpression:foriterating_varinsequence:statements(s)statements(s)循环嵌套应用打印99乘法表(for和while相互嵌套)外层循环:乘法表行数,1~9行。内层循环:乘法表列数,1
~i列。循环嵌套应用内循环:乘法表列数(j),1
~i列。foriin
range(1,10):forjin
range(1,i+1):外循环:乘法表行数(i),1~9行。第二个乘数是所在的行(i)print(j,'*',i,'=',i*j,end='\t')fori
inrange(1,10):
forj
inrange(1,i+1):
print(j,'*',i,'=',i*j,end='\t')
print()第一个乘数是所在的列(j)循环嵌套应用循环嵌套应用循环嵌套应用print('************************以下是while循环嵌套************************')i=1whilei<10:
j=1#初始化内循环变量,因j每次都要从1开始,故j只能写在外循环内部与内循环平级
whilej<i+1:
print(j,'*',i,'=',i*j,end='\t')
j+=1
print()
i+=1#while循环嵌套循环嵌套应用#while嵌套forprint('*'*30+'while嵌套for'+'*'*30)i=1whilei<10:
forjinrange(1,i+1):print(j,'*',i,'=',i*j,end='\t')print()
i+=1#for嵌套whileprint(('*'*30+for嵌套while'+'*'*30)foriinrange(1,10):j=1
whilej<i+1:print(j,'*',i,'=',i*j,end='\t')
j+=1print()循环嵌套循环嵌套四种方式输出9*9乘法表Pythonbreak、continue、pass江苏电子职业学院Python物联网break、continue、pass概念breakbreak
语句可以跳出for和while的循环体。循环语句可以有else子句,当循环条件变为false时,循环终止后会执行else后的语句,但循环被break终止时不执行else后的语句。continuecontinue
语句被用来告诉Python跳过当前循环块中的剩余语句,然后继续进行下一轮循环。Continue与breakcontinue
结束一次循环;break结束整个循环。Continue与breakn=5whilen>0:n=n-
1ifn==2:
breakprint(n)print('循环结束。')43循环结束。n=5whilen>0:n=n-
1ifn==2:
continueprint(n)print('循环结束。')4310循环结束。注意:结束循环
和
结束一次循环,意义完全不同passpass是空语句,不做任何事情,一般用做占位语句,是为了保持程序结构的完整性。>>>whileTrue:...pass#等待键盘中断(Ctrl+C)breakcontinuepassPython异常江苏电子职业学院Python物联网异常处理异常捕捉可以使用
try/except
语句概念try/except
语句try/except
语句importsys
try:
f=open('myfile.txt')
s=f.readline()
i=int(s.strip())
exceptOSErroraserr:
print("OSerror:{0}".format(err))
exceptValueError:
print("Couldnotconvertdatatoaninteger.")
except:
print("Unexpectederror:",sys.exc_info()[0])
raiseOSerror:[Errno2]Nosuchfileordirectory:'myfile.txt'1.当程序路径下没有myfile.txt文件时:ValueErrorCouldnotconvertdatatoaninteger.2.文件夹存在但是内容不能转成整数,如文件中的内容如下:try/except...elsetry/except...elseimportsys
try:
f=open('myfile.txt','r')
exceptOSErroraserr:
print("OSerror:{0}".format(err))
except:
print("Unexpectederror:",sys.exc_info()[0])
raise
else:
print("runningOk!")try-finally语句try-finally语句try:
str="你好"
print(int(str))
exceptExceptionaserror:
print("捕获异常:"+error)
else:
print("没有捕获到异常")
finally:
print('这句话,无论异常是否发生都会执行。')抛出异常raiseraise
[Exception
[,args[,traceback]]]
x
=
10
if
x
>
5:
raise
Exception('x不能大于5。x的值为:{}'.format(x))Traceback
(mostrecentcalllast):
File
"test.py",line3,
in
<module>
raise
Exception('x不能大于5。x的值为:{}'.format(x))
Exception:x不能大于
5。x的值为:
10
try-excepttry/except...else--finallytry/except...elseraisePython模块江苏电子职业学院Python物联网模块是一个包含所有定义的函数和变量的文件,其后缀名是.py。模块可以被别的程序引入,以使用该模块中的函数等功能。这也是使用python标准库的方法。概念import语句当解释器遇到import语句,如果模块在当前的搜索路径就会被导入。importmodule1[,module2[,...moduleN]
#!/usr/bin/python3
#Filename:demo.py
defprint_func(par):
print("Hello:",par)
return#!/usr/bin/python3
#Filename:test.py
#导入模块
importdemo
#现在可以调用模块里包含的函数了
demo.print_func("libo")Hello:libofrom…import语句Python的from语句可以实现从模块中导入一个指定的部分到当前命名空间中,语法如下#!/usr/bin/python3
#Filename:demo.py
defprint_func(par):
print("Hello:",par)
return
defprint_part(bar):
print("hi:",bar)
return#!/usr/bin/python3
#Filename:test.py
#导入模块
fromdemoimportprint_part
#现在可以调用模块里包含的函数了
print_part("libo")
frommodnameimportname1[,name2[,
...nameN]]
from…import*语句把一个模块的所有内容全都导入到当前的命名空间也是可行的,只需使用如下声明#!/usr/bin/python3
#Filename:demo.py
defprint_func(par):
print("Hello:",par)
return
defprint_part(bar):
print("hi:",bar)
returnfrommodnameimport
*
#!/usr/bin/python3
#Filename:test.py
#导入模块
fromdemoimport*
#现在可以调用模块里包含的函数了
print_part("libo")
print_func("wantin")模块反思模块作用1:为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样每个.py文件包含的代码就相对较少;模块作用2:大大提高了代码的可维护性;模块作用3:避免函数名和变量名冲突。相同名字的函数和变量完全可以分别存在不同的模块中。分功而治,模块间互相引用,突破“零代码”工程,加快项目构建;一带一路不断拓展合作区域与领域,共商、共享、共建。截至2021年10月26日,中国与140个国家和32国际组织,签署了206份共建“一带一路”合作文件Python数字、Python字符串Python元组Python列表Python字典Python文件江苏电子职业学院Python物联网文件的打开和创建文件读取文件写入内容查找和替换概念文件打开与关闭open()方法用于打开一个文件,并返回文件对象,完整的语法格式为:open("test.txt",mode='r',buffering=-1,encoding=None,errors=None,newline=None,closefd=True,opener=None)file:
必需,文件路径(相对或者绝对路径)。mode:
可选,文件打开模式buffering:设置缓冲encoding:一般使用utf8errors:
报错级别newline:
区分换行符closefd:
传入的file参数类型opener:
设置自定义开启器,开启器的返回值必须是一个打开的文件描述符。注意:使用open()方法一定要保证关闭文件对象,即调用close()方法open()函数常用形式是接收两个参数:文件名(file)和模式(mode)文件打开与关闭file=open("./test.txt")
print(file.read())
file.close()文件打开(读)与关闭fileObject.read([size]);
参数size
--从文件中读取的字符数(文本模式)或字节数(二进制模式),默认为
-1,表示读取整个文件文件打开与关闭常用打开模式::模式描述t文本模式(默认)。x写模式。b二进制模式。+打开一个文件进行更新(可读可写)。U通用换行模式(Python3不支持)。r以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。rb以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。一般用于非文本文件如图片等。r+打开一个文件用于读写。文件指针将会放在文件的开头。rb+以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。一般用于非文本文件如图片等。w打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。wb以二进制格式打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。w+打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。wb+以二进制格式打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。a打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。ab以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。a+打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。ab+以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。r只能读
r+可读可写,不会创建不存在的文件,从顶部开始写,会覆盖之前此位置的内容w只能写,覆盖整个文件,不存在则创建
w+可读可写,如果文件存在,则覆盖整个文件,不存在则创建
a只能写,从文件底部添加内容不存在则创建
a+可读可写从文件顶部读取内容从文件底部添加内容不存在则创建文件写入file=open("./test.txt",'w')
file.write("good")file.close()file=open("./test.txt",'a')
file.write("good")file.close()注意:‘a’和‘w’的区别,
‘w’模式会将文件中的内容清空
‘a’模式会在原文件内容的末尾追加写入文件内容查找查找文件中“hello”的个数importre
fp=open(“test.txt”,“r”)
count=0
forsinfp.readlines():
print(count)
fp.close()li=re.findall("hello",s)
if(len(li)>0):
count=count+len(li)文件内容替换文件替换:把文件test.txt中的hello替换为csvt,并保存在test1.txt中fp1=open("test.txt","r")
fp2=open("test1.txt","w")
fp1.close()
fp2.close()forsinfp1.readlines():
fp2.write(s.replace("hello","csvt"))文件内容替换1.代码极简2.长度极简生活应删繁就简,极简不是没有追求,而是用最快捷的方法做最有效的事情,我们把有限的精力,最大限度的做一些有意义的事,从而获得更大的快乐和幸福。文件操作反思文件替换:把文件test.txt中的hello替换为csvt,并保存在当前文件中fp1=open("test.txt","r+")
fp1.close()s=fp1.read()fp1.seek(0,0)fp1.write(s.replace("hello","csvt"))文件打开与创建文件内容查找文件读写文件内容替换Python函数江苏电子职业学院Python物联网函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。函数能提高应用的模块性,和代码的重复利用率。概念匿名函数python使用lambda来创建匿名函数。所谓匿名,意即不再使用def语句这样标准的形式定义一个函数。lambda只是一个表达式,函数体比def简单很多。lambda的主体是一个表达式,而不是一个代码块。仅仅能在lambda表达式中封装有限的逻辑进去。lambda函数拥有自己的命名空间,且不能访问自己参数列表之外或全局命名空间里的参数。匿名函数lambda函数的语法只包含一个语句,如下:lambda
[arg1[,arg2,.....argn]]:expression
#可写函数说明
sum=lambdaarg1,arg2:arg1+arg2
#调用sum函数
print("相加后的值为:",sum(10,20))
print("相加后的值为:",sum("hello","world"))相加后的值为:30相加后的值为:helloworldreturn语句return[表达式]
语句用于退出函数,选择性地向调用方返回一个表达式。不带参数值的return语句返回Nonedefmax(a,b):
ifa>b:
returna
else:
returnb
a=4
b=5
print(max(a,b))谢谢观看Python函数参数江苏电子职业学院Python物联网函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。函数能提高应用的模块性,和代码的重复利用率。概念参数以下是调用函数时可使用的正式参数类型:必需参数关键字参数默认参数不定长参数必须参数#!/usr/bin/python3
#可写函数说明
defprintme(str):
"打印任何传入的字符串"
print(str)
return
#调用printme函数,不加参数会报错
printme()Traceback(mostrecentcalllast):File"E:\codetest\pythondemo\demo1.py",line10,in<module>printme()TypeError:printme()missing1requiredpositionalargument:'str'printme("helloworld")默认参数#可写函数说明
defprintinfo(name,age=31):
"打印任何传入的字符串"
print("名字:",name)
print("年龄:",age)
return
#调用printinfo函数
printinfo(age=30,name="Libo")
print("------------------------")
printinfo(name="wantin")名字:Libo年龄:30------------------------名字:wantin年龄:31不定长参数如果需要一个函数能处理比当初声明时更多的参数。这些参数叫做不定长参数。基本语法如下:deffunctionname([formal_args,]*var_args_tuple):
"函数_文档字符串"
function_suite
return[expression]#可写函数说明
defprintinfo(arg1,*vartuple):
"打印任何传入的参数"
print("输出:")
print(arg1)
print(vartuple)
#调用printinfo函数
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年酒店客房服务满意度提升单位合同范本3篇
- 二零二五年度网络安全防护服务 XXX合同协议补充协议2篇
- 二零二五年高管薪酬体系调整与执行合同3篇
- 2024版建设工程合同包括哪几种形式
- 二零二五年研发合作协议及其技术转让条款2篇
- 2024汽修场地租赁及维修设备采购合同范本2篇
- 二零二五年海南地区教育机构劳动合同示范文本3篇
- 2024年酒店式公寓共同开发协议
- 二零二五年度公益组织财务审计代理协议3篇
- 2024版山林土地租赁合同书范本
- 托福阅读讲义
- 输电线路基础知识输电线路组成与型式
- 三年级数字加减法巧算
- GB/T 9755-2001合成树脂乳液外墙涂料
- GB/T 10609.3-1989技术制图复制图的折叠方法
- GB 4053.2-2009固定式钢梯及平台安全要求第2部分:钢斜梯
- 通力电梯培训教材:《LCE控制系统课程》
- 佛山市内户口迁移申请表
- 品管圈PDCA持续质量改进提高静脉血栓栓塞症规范预防率
- 一次函数单元测试卷(含答案)
- 陕西省榆林市各县区乡镇行政村村庄村名居民村民委员会明细
评论
0/150
提交评论