python基础知识(函数)

#微头条上有一份收益的时候你开心吗#

函数调用

普通函数

Python内置了很多有用的函数,我们可以直接调用。
要调用一个函数,需要知道函数的名称和参数,比如获取变量类型的type(),调用type函数如下:

>>> result = "字符串"
>>> print(type(result))
<class 'str'>

type函数不仅可以接收自定义变量,也可以接收自定义函数名。如下:

>>> def test():
>>>    print(111)
>>> print(type(test))
<class 'function'>

也有python内置的函数可以接收任意多个参数的,那就是math,它可以返回任意参数中最大的值。如下:

>>> result1 = max(1, 2, 3)
>>> print(result1)
1
>>> result2 = max(10, 4, 5, 8, 9)
>>> print(result2)
10

1.2.数据转换

Python内置的常用函数还包括数据类型转换函数,比如int()函数可以把其他数据类型转换为整数:

>>> int('123')
123
>>> int(12.34)
12
>>> float('12.34')
12.34
>>> str(1.23)
'1.23'
>>> str(100)
'100'
>>> bool(1)
True
>>> bool('')
False

自定义函数

在Python中,定义一个函数要使用def语句,依次写出函数名、括号、括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用return语句返回。

普通函数

我们以自定义一个求绝对值的my_abs函数为例:

def my_abs(x):
    if x >= 0:
        return x
    else:
        return -x

print(my_abs(-100))

打印出来的值为:

100

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

def my_abs(x):
    return
    
print(my_abs(-100))

打印出来的值为:

None

尽快我们将自定义函数定义了最终的返回值类型,依然会返回None,举例子:

def my_abs(x) -> str:
	return
print(my_abs(-99))

打印出来的值为:

None

自定义函数

如果我们想定义一个什么不都不做的函数,可以使用pass关键词来表示,举例子如下:

def test():
    pass
    
print(test())

打印出来的返回值为:

None

返回多个值

函数可以返回多个值吗,答案是肯定的。举例子:

def point(x, y):
	nx = x + 1
	ny = y - 1
	return nx, ny

re1, re2 = point(1, 2)
print("re1:{}=>re2:{}".format(re1, re2))

此时在自定义函数point函数体内return了2个返回值,返回值与返回值之间使用逗号隔开。
打印返回的值为:

re1:2=>re2:1

函数参数

位置参数

先写一个计算x2的函数:

def power(x):
    return x * x

对于power(x)函数,参数x就是一个位置参数。
当我们调用power函数时,必须传入有且仅有的一个参数x:

>>> print(power(10))
100

默认参数

默认参数是指定义函数参数是,给与参数默认值,举列子:

def student(name, sex, age=6):
	print('name:', name)
	print('sex:', sex)
	print('age:', age)

student("liyang", "man")

输出打印的内容为:

name: liyang
sex: man
age: 6

此时给予函数参数age默认值了。在调用函数的时候,只需要传输name,sex参数值即可。

递归函数

在函数内部,可以调用其他函数。如果一个函数在内部调用自身本身,这个函数就是递归函数。

举个例子,我们来计算阶乘n! = 1 x 2 x 3 x … x n,用函数fact(n)表示,可以看出:

fact(n)=n!=1×2×3×···×(n-1)×n=(n-1)!×n=fact(n-1)×n
所以,fact(n)可以表示为n x fact(n-1),只有n=1时需要特殊处理。

于是,fact(n)用递归的方式写出来就是:

def fact(n):
    if n==1:
        return 1
    return n * fact(n - 1)
re = fact(10)
print(re)

此时打印的内容为:

3628800

相关文章

Python 中 必须掌握的 20 个核心函数及其含义,不允许你不会

以下是 Python 中 必须掌握的 20 个核心函数及其含义,涵盖数据处理、文件操作、面向对象等关键领域,每个函数均附代码示例和应用场景:一、基础必备函数1.print()作用:输出内容到控制台示例...

你真的用对了吗?7个常被误用的Python内置函数及最佳实践

你是否曾经在使用多年的工具中突然发现一个新功能,然后感叹:“我怎么一直没发现这个?”没错,今天我们就来体验一把“Python函数版”的这种乐趣。这些函数很可能已经是你日常代码的一部分,但我敢打赌,你并...

Python函数

定义和基本内容def 函数名(传入参数): 函数体 return 返回值注意:参数、返回值如果不需要,可以省略。函数必须先定义后使用。参数之间使用逗号进行分割,传入的时候,按照顺序传入...

Python 函数的四种参数,你了解吗

Python 函数的四种参数是指在定义和调用函数时,可以使用的不同类型的参数。它们分别是:必传参数(positional arguments):这是最常见的参数类型,它要求按照函数定义时的顺序,依次传...

你不得不知道的10个最危险的Python函数

在Python中,某些函数如果使用不当,可能导致 安全漏洞、数据损坏、系统崩溃 甚至 远程代码执行(RCE)。以下是 10个最危险的Python函数,开发者必须谨慎使用:1.eval()与exec()...