字符串的循环遍历
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)