【每天来点python】定义函数

学习网址

注意:

在Python中,定义一个函数要使用def语句,依次写出函数名、括号、括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用return语句返回。
如果没有return语句,函数执行完毕后也会返回结果,只是结果为None。
return None可以简写为return。

Python的函数返回多值其实就是返回一个tuple,按位置赋给对应的值

练习

请定义一个函数quadratic(a, b, c),接收3个参数,返回一元二次方程:

ax2 + bx + c = 0

的两个解。

提示:计算平方根可以调用math.sqrt()函数:

>>> import math
>>> math.sqrt(2)
1.4142135623730951

解法:

# -*- coding: utf-8 -*-

import math

def quadratic(a, b, c):
    # check data type of a,b,c
    if not isinstance(a, (int, float)):
        raise TypeError("bad operand type")
    if not isinstance(b, (int, float)):
        raise TypeError("bad operand type")
    if not isinstance(c, (int, float)):
        raise TypeError("bad operand type")

    # check value of a
    if a == 0:
        raise TypeError("a can't be zero")
    elif (b*b - 4*a*c) <0:
        return(print("There is no solution."))
    else:
        x1 = (-b + math.sqrt(b*b - 4*a*c)) / (2*a)
        x2 = (-b - math.sqrt(b*b - 4*a*c)) / (2*a)
        return (x1,x2)

print(quadratic(2,3,1))

    原文作者:王诗翔
    原文地址: https://www.jianshu.com/p/26062a190d55
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞