for循环和函数

字符串的循环遍历

str="hello world"
for s in str:
    print("当前输出字符为%s"%(s))
print()

在这里插入图片描述

range函数的调用

i=1
list=['xzy','zxq','lwq']
for name in list:
    print('%d、%s'%(i,name))
    i=1+i
print()

for index in range(0,len(list)):
    print("%d、%s"%(index+1,list[index]))
else:
    print("名字输出结束!")
print()

在这里插入图片描述

求10-20之间的质数

for number in range(10,21):
    for i in range(2,number):
        if number%i==0:
            print("%d不是质数!"%(number))
            break
    else:
        #print(number)
        print("%d是质数!"%(number))
print()

for number in range(10,21):
    for i in range(2,number):
        if not (number%i):
            print("%d:%d/%d可以整除,所以%d不是质数!"%(number,number,i,number))
            break
        if i==number-1:
            print("%d是质数!"%(number))
    # else:
        # print(number)
        # print("%d是质数!"%(number))
print()

在这里插入图片描述

在这里插入图片描述

自定义函数

def sum(a,b,name):#自定义函数
    print("%s nb!"%(name))
    return a+b
print(sum(1,4,"小王"))

在这里插入图片描述

必要参数和可选参数

def add(x,y=100):#必要参数是在函数调用时必须要传入的参数 可选参数要先自己设置参数的默认值
    return x+y
print(add(1))
print()

在这里插入图片描述

引用变化

list1=[1,2,3,4,5]
list2=list1
list2[2]=10#引用赋值,会导致list1也会一同变化
print(list1,list2)

在这里插入图片描述

不定长参数

def add(x,y):
    print(x+y)
add(11,222)

def add(x,*nums):#不定长参数 
    total=x
    for i in nums:
        total+=i
    print(total)
add(1,2,3,4)

# java的不定长参数
# test(String... args)

在这里插入图片描述

使用参数名进行传参

def add(x=0,y=0):
    print("x:",x)
    print("y:",y)
    print("x+y:",x+y)
add(123,321)
# 在传参时可以使用参数名进行传参数
add(y=123,x=321)#关键字参数

在这里插入图片描述

return返回

def add(x,y):
    print(x+y)
    return x+y
res=add(1,2)
print(res)

在这里插入图片描述

关于return fun 和return fun()的区别

funx(1)==funy----->funx(1)(2)==funy(2)

#关于return fun 和return fun()的区别
def funx(x):
    def funy(y):
        return x+y
    return funy
print(funx(1)(2))

# 错误写法
def funx(x):
    def funy(y):
        return x*y
    return funy()
print(funx(1)(2))

在这里插入图片描述

局部变量和全局变量

n=123
def fun1():
    return n+100#全局变量的使用
print(fun1())

n=123
def fun2():
    n2=n+100#局部变量
    return n2
fun2()
print(fun2())
print(n2)#错误

在这里插入图片描述

关键字global

total=0
def fun3(x,y):
    total=x+y#重新定义了一个total
    print(total)
fun3(1,3)
print(total)

total=0
def fun3(x,y):
    global total#这个关键字作用是在函数中指定变量为全局变量
    total=x+y
    print(total)
fun3(1,3)
print(total)

在这里插入图片描述

匿名函数

#定义了一个匿名函数,并且把该函数传给add这个变量
#一般来讲,Python中的匿名函数就是用于简单操作的表达式
add=lambda x,y:x*y#匿名函数
print(add(12,3))

在这里插入图片描述

回调函数(参数)

def getTotal(callback, *nums):
    total=0
    for i in nums:
        total+=i
    return callback(total)
fun1=lambda total:total/100
res=getTotal(fun1,300,23,442,22)
print(res)

在这里插入图片描述

自调函数

i=1
while(i<=10):
    print(i)
    i+=1
print()

#自调函数 自己调用自己
def fun1(i):
    print(i)
    if i<10:
        i+=1
        fun1(i)
fun1(1)

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值