当前位置:   article > 正文

python中使用关键字声明一个函数,Python函数的说明与运用

python中使用关键字啥声明一个函数

Python函数的说明与运用

函数定义:

函数是一组语句的集合,用以实现某一特定功能。函数可简化脚本,函数包括内置函数和自定义函数

自定义函数框架:

在python中使用def可以声明一个函数,完整的函数是由函数名,参数,函数体,返回值。

声明函数的形式如下:

def 函数名 (参数)

函数体

return 返回值

注意:参数和返回值不是必须的,当没有设置返回值的时候,该函数的返回值默认是null

函数调用

在python中自定义函数与内置函数调用方法相同,只要使用函数名制定要调用的函数,然后再用函数后加相应的参数即可,如果有多个参数,则不同的参数要以“,”分开。函数调用必须在申明一个函数之后才能调用。

函数中的参数分类

默认参数

在python中,可以在声明函数时,预先为参数设置一个默认值。当调用参数时,如果某个参数,具有默认值,则可以不向函数传递该参数

def  fun(x=5)

return x**3

print (fun(2))

8

print (fun())

125

指定参数

如果一个函数具有多个参数,并且这些参数都具有默认值,在调用函数的时候,可能第一个参数传递值可以设置

def fun(x=1,y=2,z=3):

return(x+y-z)**3

print (fun(2))

1

print (fun(3))

8

print (fun(3,3))

27

动态参数

*默认输入的参数,全部放置在元组中

def fun(*arg:)

print (args)

fun (11,22)

(11,22)

**默认输入的参数,全部放置在字典中

def fun(**args):

print(args)

fun(k1=11,k2=22)

{k1:11,k2:22}

在同时有一个*和两个*的时候,定义默认参数时一个*一定要在前面

def fun(*args,**qwargs):

print(args)

print(qwargs)

fun(22,33,k1=22,k2=33)

(22,33)

{'k2':33,'k1':22}

在python中格式化输出%s与%d,函数中也有格式话输出format()

s="i am {0},age{1}".format("alex",18)

s="i am {0},age{1}".format(*["alex",18])

s="i am {name},age{age}".format(name="alex",age=18)

s="i am {0},age{1}".format(**dic)

s="i am alex,age 18" #输出结果

变量的作用域

在python脚本中,不同的函数可以具有相同的参数名,在函数中已经声明过变量名,在函数外还可以继续使用,而在脚本运行过程中,其值并不相互影响

在python中,作用域可以分为内置作用域和全局作用域和局部作用域,内置作用域是python预先定义的,全局作用域是所编写的整个脚本,局部作用域是某个函数内部范围

如果函数中使用函数外的变量,则可以在变量名前使用global关键字

def fun(x):   #声明一个函数

a=[1]     #定义一个名为a的列表

a.append(x)

print(a)

a=[2,3,4]    #在函数外定义一个名为a的列表

fun(2)

[1,2]

a          #输出a的值

def fun(x):    #声明一个函数

global a

return a+x

a=5

fun(3)

8

a=2

fun(3)

5

默认定义的全局变量全部大写,局部变量全部小写

三元计算:

if 1==1:

name="john"

else:

name="hehe"

name="john" if 1==1 else "hehe"

最简单的函数:用lambda表达式

用lambda适用于定义一个小型的函数,在函数中仅能包含单一的参数表达式,而不能包含其他的语句。在lambda中也可以调用其他的函数。

def fun():

print ('lambda')

f= lamdba:fun()

f()

lambda

def f1(a1):

return a1+100

f2=lambda a1:a1+100   #lambda参数:函数体

ret=f1(10)

print(ret)

内置函数:

取绝对值

def abs()

f=abs(-1)

f=1

判断真假的函数

def all()  #当all的参数里全部为真时,all()为真,当all里有一个参数为假时,即为假

f= [11,22]

all(f)为turn

f=[11,0]

all(f)为false

def any()

f=[11,0]

any(f)为turn

按照编码,转换字节类型

def byte()

n=bytes(s,encoding="utf8")

n=bytes(s,encoding="gbk")

判断对象能不能被调用 如果可以返回Turn

def callable()

基于ascii码数字与字母之间的转换

def chr()  #数字转换字母

def ord()  #字母转换数字

随机产生数字 random模块

import random

li=[]

for i in range(6):

r=random.randrange(1,5)

if r==2 or r==4

num=random.randrange(0,10)

li.append(str(num))

else:

temp=random.randrange(65,91)

c=chr(temp)

li.append(c)

result = "".join(li)

print(result)

def compile() 编译代码

def eval() 接收字符串 将把字符串变成一个表达式执行

S=8*8

ret=eval(s)

print(ret)

64

def exec() 执行代码

def delattr

getattr

def dict() 字典

def dir() 快速获取对象类提供功能

def divmod(100,10)返回元组 元组的元素为商和元组

def isinstance()判断元素是否属于实例或类

a="li"

r=isinstance(a,str)

print(r)

Turn

def filter() #循环第二个参数,让每个循环元素执行函数,如果函数返回值Turn,表示

filter (函数,可迭代的类)

def f2(a):

if a>22:

return True    函数也可以使用lambda表达式写入 比如F2=lambda a: a>33.带入

li=[11,22,33,44,55]   filter(lambda a: a>33,li)

ret=filter(f2,li)

print(list(li))

def map() #循环第二个参数 让每个元素循环执行 函数fa,返回结果

map(函数,可迭代)

li=[11,22,33,44,55]

def fa(a)

return a+100

result=map(f2,li)

print(result)

def float() 将字符串修改成格式化

def format() 字符串格式化

def frozenset() 不可变集合

def globals() 获取所有的全局变量

def local() 获取所有的局部变量

def hash() 生成哈希值

def id() 查看内存地址

def iter() 创建迭代器

def len() 查看长度

def max() 求最大值

def min() 求最小值

def sum() 求和

def paw() 平方

t=paw(2,10)

print(t)

1024

def reversed() 使可迭代参数翻转

def round(1,8) 使数字四舍五入

2

def slice() 切片的功能

发邮件

import smtplib

from email.mime.text import MIMEText

from email.utils  import formataddr

msg = MIMEText('邮件内容','plain','utf-8')

msg['From'] = formataddr(["发件",'975910711@qq.com'])

msg['To'] = formataddr(["收件",'975910711@qq.com'])

msg['Subject'] = "主题"

server = smtplib.SMTP("smtp.qq.com".25)

server.login("1343612327@qq.com","邮箱密码")

server.sendmail('1343612327@qq.com',['975910711@qq.com',],msg.as_string())

server.quit()

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/616792
推荐阅读
相关标签
  

闽ICP备14008679号