Python基础之函数的应用

学习软件编程,函数必须掌握好。
在Python中,定义函数要使用def语句
定义函数格式为  def  函数名(参数):函数体  return 返回值


1.接下来,我们自定义一个求绝对值的函数my_abs

def my_abs(x):
  if not isinstance(x, (int, float)):#当传入的参数,不是int或float类型时,就会报以下错误
    raise TypeError('bad operand type')
if x >= 0: #当X大于等于0时,返回X本身 return x else:     #当X小于0时,返回其负数,负负得正,因此可以得出绝对值 return -x

需要注意的是,函数体内部的语句在执行时,一旦执行到return时,函数就执行完毕,并返回结果。
因此,函数内部通过条件判断和循环可以实现非常复杂的逻辑。
如果没有 return 语句,函数执行完毕后也会返回结果,只是结果为 None 。
return None 可以简写为 return 。

 

2.我们再定义一个求一个数的几次幂的函数my_pow

def my_pow(x,n=2):  #定义函数,my_pow,其中x为求幂的数,n为几次幂,这里我们设置默认为2次幂
    s = 1     
    while n > 0:    
        n = n - 1
        s = s * x
    return s

注意:当函数有多个参数时,把变化大的参数放前面,变化小的参数放后面。变化小的参数就可以作为默认参数。

 

3.我们再定义一个求一组数的平方和的函数。如:给定一组数字a,b,c……求它们平方的和

要定义出这个函数,我们必须确定输入的参数。由于参数个数不确定,我们首先想到可以把a,b,c……作为一个lis
t或tuple传进来,这样,函数可以定义如下:

def my_sum(*numbers): #在参数前面加了一个 * 号,调用该函数时,可以传入任意个参数,包括0个参数
    s =  0
    for i in x:
        s = s + i * i
    return s

 但是调用的时候,需要先组装出一个list或tuple
我们也可以传入listh或者tuple作为参数,代码如下

L = [1,2,3,4]
print my_sum(L[0],L[1],L[2],L[3]) #这种方法可以实现,但是很麻烦。可以用下面这种方式
print my_sum(*L)

  

转载于:https://www.cnblogs.com/haibing1230/p/8469500.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python中,函数是一组可重用的代码块,它们接受参数、执行一些操作并返回结果。函数可以提高代码的可读性和可维护性,因为它们允许将代码划分为较小的块,每个块都有自己的特定任务。 定义一个函数可以使用`def`关键字,函数名应该用小写字母和下划线来命名。以下是一个简单的函数示例: ```python def greet(name): print(f"Hello, {name}!") ``` 这个函数名叫做"greet",接受一个名字参数,然后打印一个问候语。要调用函数,只需调用函数名并传入所需的参数: ```python greet("Bob") ``` 这将打印出 "Hello, Bob!"。 函数可以返回一个值,使用`return`关键字: ```python def add(a, b): return a + b ``` 这个函数名叫做"add",它接受两个参数并返回它们的和。要使用返回值,可以将函数调用作为表达式使用: ```python result = add(3, 4) print(result) # 输出 7 ``` 如果一个函数没有明确的返回值,那么它将默认返回`None`。 除了参数和返回值,Python函数还可以有一些关键字参数和默认参数。例如: ```python def greet(name, greeting="Hello"): print(f"{greeting}, {name}!") ``` 这个函数有两个参数,一个是名字,另一个是问候语,但是问候语有一个默认值"Hello"。这样,当不提供问候语参数时,函数将使用默认值: ```python greet("Bob") # 输出 "Hello, Bob!" greet("Alice", "Hi") # 输出 "Hi, Alice!" ``` 这就是Python中定义和使用函数基础知识。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值