您的位置:首页 > 编程语言 > Python开发

python函数用法

2018-04-17 19:09 453 查看
  python函数用法比java更加灵活。支持可变参数与参数默认值:

    pass是空语句,为了保持结构完整性。

# python函数练习
# 1.python自带的一些常见函数的练习
print(abs(-95))
print(hash(-95))
print("sssssssssssssssss"+str(95))

# 2.自定义函数
def my_abs(a):
if a >= 0:
return a
else:
return -a

# 3.定义不带参数与返回值的函数(无返回值的函数类似于return None,可以简写为return)
def print_star():
print("***********")

print_star()
x=print_star() #实际返回的为None
print(x)

# 4.多个返回值的函数定义以及使用方法(实际返回的是一个tuple,用多个值获取tuple的时候实际是将每个tuple的元素赋给对应的值)
def twoReturnValue():
return 'a','b'

x, y = twoReturnValue();
print(x, y)
value=twoReturnValue()
print(value)

# 5.递归函数的用法(自己调用自己的函数)
# 5.1.计算裴波那契数列的第N个数字1 1 2 3 5 8 13 ...
def count(index):
if index == 1:
return 1
if index == 2:
return 1
return count(index-1)+count(index-2)

print(count(7))
# 5.2计算N的阶乘
def jiecheng(n):
if n==1:
return 1
else:
return n*jiecheng(n-1)

print(jiecheng(3))

# 6.默认参数的用法
# 6.1默认参数求n的x次方,如果不传入n的话默认为2
def power(x, n=2):
s=1
while n > 0:
s=s*x
n=n-1
return s
print(power(5,3))
print(power(5))

# 可变参数的用法(实际传入的是一个集合)
def fun3(*arg):
print(len(arg))
print(arg)
for ele in arg:
print(ele)

fun3(1,5,8,5)

# 定义一个空函数(pass关键字是空语句,是为了保持程序结构的完整性)
def fun4():
pass

fun4()


补充:python也有类似于java的main函数

#主函数用法
if __name__ == '__main__':
print('这是主函数,类似于Java的main函数,是程序的入口')


结果:

  这是主函数,类似于Java的main函数,是程序的入口

附一些函数练习题:

# 函数部分练习题
# 1.获取三个数字中最大的一个
def fun1(a,b,c):
if a >=b and a>=c:
return a
elif b >= c and b>= a:
return b
else:
return c
print(fun1(1,2,3))

# 2.编写一个函数,将一个集合升序排列
def fun2(list):
for index2 in range(len(list)):
for index22 in range(index2+1,len(list)):
if list[index2] > list[index22]:
tmp=list[index2]
list[index2]=list[index22]
list[index22]=tmp
return list

print(fun2([1,6,9,8,5,6,96,5]))

# 3.编写函数往集合中插入元素
def fun3(list,element):
list.append(element)
return list

print(fun3([1,2],5))

# 4.编写函数,实现从控制台输入一个数字并在控制台打印
def fun4():
print("您输入的数字是:", input("请输入一个数字"))

fun4()

# 5.编写一个函数,实现将一个集合中的元素反转
def fun5(list):
tmpList=[]
index5 = len(list)-1
while index5>=0:
tmpList.append(list[index5])
index5 = index5-1
return tmpList

print(fun5([5,5,9,6,8,4]))

# 6.编写函数,设置一个整数参数,如果传6,打印如下内容
def fun6(num):
for i in range(num):
print(str(i)+"+"+str(num-i)+"="+str(num))
print(str(num)+"+"+str(num-num)+"="+str(num))

fun6(6)

# 7、编写函数,实现登录验证功能,验证次数最多三次
def fun7(name,password):
for i in range(3):
input_name=input("请输入用户名:")
input_password=input("请输入密码:")
if input_name == name and input_password==password:
print("你牛逼")
return
else:
print("输入错误!您还有"+str(2-i)+"次机会")

fun7("n","p")

# 8、编写函数,计算某个数的阶乘(递归函数的用法或者使用循环计算)
def fun8(num):
if num <1:
print("请传递正数参数")
return
if num==1:
return 1
else:
return num * fun8(num-1)

print(fun8(6))
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: