python 函数基础--------学会他你将对python有了更深入的了解,适合初学者和进阶者

简介: python 函数基础--------学会他你将对python有了更深入的了解,适合初学者和进阶者

**

print

**

这就是一个简单的print()输出,python最简单的,也是最基础,最重要的,后期调试代码,解决问题时经常会用到。

# TODO                鸟欲高飞,必先展翅
# TODO                 向前的人 :Jhon
print("小美")
print("在吃饭")
print("添加联系方式")

结果:


小美
在吃饭
添加联系方式

**

函数

**

什么是函数?

函数是组织好的,可重复使用的,用来实现单一或者相关联功能的代码段,最重要的就是可复用,使有些代码不必重复书写,大大减少工作量


为什么要学习函数?函数有什么作用?

函数能提高应用的模块性,减少代码的冗余。除了进线程,代码的冗余也会影响计算机工作的效率。在计算机编程中,经常有一些逻辑算法需要打包,从而使其在不同的地方重复利用。函数允许将代码整合成一个功能模块,并且此功能模块能重复使用。在Python程序中函数不进可以提高程序的模块性,最大程度的减少代码冗余,而且有利于后期的代码维护。


流程的分解?

使用函数可以将整个流程分解成一个一个的子任务,实现模块化开发


如何定义一个函数?

在Python中定义一个功能函数语法格式如下

def 函数名([参数]):
    "函数_文档字符串"
    函数体
    return [表达式]

注意

**

1、 函数代码块以def关键词开头,后接函数标识符和圆括号。
2、 任何传入的参数必须放在圆括号中间,圆括号中间可以用于定义参数。
3、 函数参数可以有多个,也可以没有,但圆括号必须保留
4、 定义函数的冒号后面,第一行语句可以选择性的使用文档字符串对函数进行说明。
5、 函数内容以冒号开始并且强制缩进
6、 return [表达式]结束函数,选择性的返回一个值给调用方。不带表达式的return 相当于返回none。Python中的函数允许没有返回值,也就是不用return。同样,return也可以返回多个值,中间以逗号隔开,等同于返回一个元组。如果retur=后面没有返回值,函数将自动返回none,none是Python中一个特别的数据类型,表示什么都没有

**

例如:

def Say_Hello():
    print("小美")
    print("在吃饭")
    print("添加联系方式")

上面这个结果是为空的,什么都没有打印出来。以上的函数只是进行了一个封装,没有调用,所以没有任何结果打印出来。


这时候就引入了一个很重要的概念,就是调用函数。就是在使用这个函数时候调用一下他。例如我上课被老师叫起来回答问题,当老师上课让我回答问题的时候会叫一下我们的名字,这时我们的名字就是函数名,叫我们名字就是调用一下我。

def Say_Hello():
    print("小美")
    print("在吃饭")
    print("添加联系方式")
Say_Hello()

结果:

小美
在吃饭
添加联系方式

我们可以发现在封装的函数下面喊一下它(也就是调用一下),就可以将函数中的方法打印出来(这时函数中的print()就是执行打印方法)


**

函数传参

**

def Say_Hello(boy):
    print("小美"+boy)
    print("在吃饭")
    print("添加联系方式")
Say_Hello("很美")

结果:


小美很美
在吃饭
添加联系方式

我们发现在喊它(调用Say_Hello函数)的时候加上一个参数就可以传给他了。注意,此时Say_Hello("很美")中 "很美"是实参,真实的参数,有肉有框架 ,而Say_Hello(boy)中boy也就是我们经常说的形参,也就是只有一个框架,没有血肉,相当于起到了占位符的作用。print(“小美”+boy)中"小美"+boy就是字符串的拼接,如果此时传递的不是字符串形式的参数,要使用字符串拼接就需要将不是字符串的强制转化为字符串:str(需要强制转换的参数)


多个函数传递


def Say_Hello(boy,adress,contact):
    print("小美"+boy)
    print("在"+adress+"吃饭")
    print("添加"+contact+"联系方式吧")
Say_Hello("很美","上海","陌陌
"

结果:

小美很美
在上海吃饭
添加陌陌联系方式

只需要同属传递多个参数就可以了。


还写一些什么呢,再来个例子更好的了解形参和实参吧


def Say_Hello(boy,adress,contact="微信"):
    print("小美"+boy)
    print("在"+adress+"吃饭")
    print("添加"+contact+"联系方式吧")
Say_Hello("很美","上海","陌陌")

结果:


小美很美
在上海吃饭
添加陌陌联系方式吧

我们发现虽然contact赋值了微信(contact=“微信”),结果打印出来的还是陌陌,而不是微信。但是当实参没有传递参数的时候,函数就会用形参有的值(参数)

例如:

def Say_Hello(boy,adress,contact="微信"):
    print("小美"+boy)
    print("在"+adress+"吃饭")
    print("添加"+contact+"联系方式吧")
Say_Hello("很美","上海")

结果:


小美很美
在上海吃饭
添加微信联系方式吧

这时候我们发现我们并没有传递实参 ''陌陌'' ,然后函数就用了形参 ''微信'' 了。所以综上所的,我们只需要记住,实参控制形参,框架的形参不可以为空。


位置参数

def Eat(a,b,c):
    print("我想吃%s%s%s"%(a,b,c))
Eat("小米饭","中米饭","大米饭")

结果:

我想吃小米饭中米饭大米饭

关键字传参 元组/字典


def tuple_pack(a,*b):
    print("tuple_pack中的a是:",a)
    print("tuple_pack中的b是:",b)
tuple_pack(1,2,3)
def dict_pack(a,**b):
    print("dict_pack中的a是:",a)
    print("dict_pack中的b是:",b)
dict_pack(1,小花=15,小红=16,小白=18,阿白="永远年轻,不为钱发愁")

结果:


tuple_pack中的a是: 1
tuple_pack中的b是: (2, 3)
dict_pack中的a是: 1
dict_pack中的b是: {'小花': 15, '小红': 16, '小白': 18, '阿白': '永远年轻,不为钱发愁'}

return

**

def Say_Hello():
    print("小美")
    print("在吃饭")
    print("添加联系方式")
    return "小美","学生","花钱"
print(Say_Hello())

结果:

小美
在吃饭
添加联系方式
('小美', '学生', '花钱')

程序从上往下执行,遇到return就退出,类似于break,但是他可以把返回值 传给调用者(调用函数)。一般起到终止函数的执行,并返回一个指定的值给函数调用者。即:return 表示从被调函数返回到主调函数继续执行,返回时可附带一个返回值, 由return后面的参数指定。return通常是必要的,因为函数调用的时候计算结果通常是通过返回值带出的。 我们可以发现return的返回值是以元组的形式存在的。

def Say_Hello():
    print("小美")
    print("在吃饭")
    return "小美","学生","花钱"
    print("添加联系方式")
print(Say_Hello())

结果:

小美
在吃饭
('小美', '学生', '花钱')

我们可以发现return下面的 **print("添加联系方式")**没有执行,所以return起到了终结者的角色。

def Say_Hello(num1,num2):
    print("小美")
    print("在吃饭")
    return num1+num2
print(Say_Hello(1,2))

结果:


小美
在吃饭

我们可以发现return直接把1+2的值传递出来了。-_-


def T_w(num1,num2):
    c=num1 if num1>num2 else num2      #如果 num1 大于 num2,就num1赋值给  c  ,否则就把num2赋值给c
    return c
A=T_w(3,5)
print(A)

结果:

5


目录
相关文章
|
26天前
|
Python
【python从入门到精通】-- 第五战:函数大总结
【python从入门到精通】-- 第五战:函数大总结
61 0
|
23天前
|
Python
Python之函数详解
【10月更文挑战第12天】
Python之函数详解
|
23天前
|
存储 数据安全/隐私保护 索引
|
13天前
|
测试技术 数据安全/隐私保护 Python
探索Python中的装饰器:简化和增强你的函数
【10月更文挑战第24天】在Python编程的海洋中,装饰器是那把可以令你的代码更简洁、更强大的魔法棒。它们不仅能够扩展函数的功能,还能保持代码的整洁性。本文将带你深入了解装饰器的概念、实现方式以及如何通过它们来提升你的代码质量。让我们一起揭开装饰器的神秘面纱,学习如何用它们来打造更加优雅和高效的代码。
|
15天前
|
弹性计算 安全 数据处理
Python高手秘籍:列表推导式与Lambda函数的高效应用
列表推导式和Lambda函数是Python中强大的工具。列表推导式允许在一行代码中生成新列表,而Lambda函数则是用于简单操作的匿名函数。通过示例展示了如何使用这些工具进行数据处理和功能实现,包括生成偶数平方、展平二维列表、按长度排序单词等。这些工具在Python编程中具有高度的灵活性和实用性。
|
18天前
|
Python
python的时间操作time-函数介绍
【10月更文挑战第19天】 python模块time的函数使用介绍和使用。
24 4
|
19天前
|
存储 Python
[oeasy]python038_ range函数_大小写字母的起止范围_start_stop
本文介绍了Python中`range`函数的使用方法及其在生成大小写字母序号范围时的应用。通过示例展示了如何利用`range`和`for`循环输出指定范围内的数字,重点讲解了小写和大写字母对应的ASCII码值范围,并解释了`range`函数的参数(start, stop)以及为何不包括stop值的原因。最后,文章留下了关于为何`range`不包含stop值的问题,留待下一次讨论。
16 1
|
25天前
|
索引 Python
Python中的其他内置函数有哪些
【10月更文挑战第12天】Python中的其他内置函数有哪些
13 1
|
1月前
|
数据处理 Python
深入探索:Python中的并发编程新纪元——协程与异步函数解析
深入探索:Python中的并发编程新纪元——协程与异步函数解析
26 3
|
1月前
|
机器学习/深度学习 算法 C语言
【Python】Math--数学函数(详细附解析~)
【Python】Math--数学函数(详细附解析~)
下一篇
无影云桌面