版权声明:本文为博主原创文章,转载请标明出处http://blog.csdn.net/cdhahaha https://blog.csdn.net/cdhahaha/article/details/83304925
全部测试代码
#!/usr/bin/env python3
#_*_ coding:utf-8 _*_
#函数的定义
#def 方法名(参数列表):下一行缩进编写方法体,返回值使用return,返回空可直接写return
#将函数定义在py文件中需要在python解释器中使用from filename import 函数名 来导入方法
#def my_abs(x):
# if x >=0:
# return x
# else:
# return -x
#print(my_abs(-100))
#空函数 pass 语句,一个方法里面什么都不做,定义一个空函数可以使用pass,pass相当于java中的todo
#pass用来占位,现在不知道如何实现,先定义好这个方法,用pass占位,等想好了思路再来写具体的方法
#if age > 10:
# pass
#参数检查
#1.函数中定义了一个参数,调用的时候传了两个,则会报类型错误
#2.函数内部使用的int值,传入的是str的时候,也会报类型错误
#3.对输入的类型进行判断
#def my_abs(x):
# if not isinstance(x,(int,float)): #isinstance()接收两个参数,参数1:判断的对象,参数2,被判断的对象或者对象集合
# raise TypeError('bad operand type')
# if x >= 0:
# return x
# else:
# return -x
# print('做了参数类型判断后的--->',my_abs('a'))
#返回多个值
import math
def move(x, y, step, angle=0):
nx = x + step * math.cos(angle)
ny = y - step * math.sin(angle)
return nx, ny
r=move(100,100,60,math.pi/6)
print(r)
1.函数的定义
def 方法名(参数列表):下一行缩进编写方法体,返回值使用return,返回空可直接写return
def my_abs(x):
if x >=0:
return x
else:
return -x
print(my_abs(-100))
执行结果
2.空函数 pass
#一个方法里面什么都不做,定义一个空函数可以使用pass,pass相当于java中的todo
#pass用来占位,现在不知道如何实现,先定义好这个方法,用pass占位,等想好了思路再来写具体的方法
if age > 10:
pass
3.参数检查
如果在第一段代码中,输入str或者除int和float之外的类型,则会报类型错误,所以很有必要在变量使用之前作类型判断
if not isinstance(x,(int,float)): #isinstance()接收两个参数,参数1:判断的对象,参数2,被判断的对象或者对象集合
raise TypeError('bad operand type')
if x >= 0:
return x
else:
return -x
4.返回多个值
python支持返回一个或多个值,一个不可变的tuple
import math
def move(x, y, step, angle=0):
nx = x + step * math.cos(angle)
ny = y - step * math.sin(angle)
return nx, ny
r=move(100,100,60,math.pi/6)
print(r)
执行结果
总结:
1,定义函数确定函数名和参数列表
2.参数传入函数后,先对参数进行容错处理,添加类型判断
3.函数体内,使用return返回结果,不写则表示return None;
4.函数可以return 一个或多个值,多个值时,是一个不可变的tuple