PYTHON知识点学习-函数(上)[你还记得奥特曼的口号吗?]

简介: PYTHON知识点学习-函数(上)[你还记得奥特曼的口号吗?]

函数

函数:就是一段可以重复使用的代码~  ctrl+c,ctrl+v.

我们以求和为例:

# 1.求1-100的和
theSum = 0
for i in range(1,101):
    theSum += i
print(theSum)
# 2.求 300-400的和
theSum=0
for i in range(300,401):
    theSum += i
print(theSum)
# 3.求 1-1000 的和
theSum = 0
for i in range(1,1000):
    theSum += i
print(theSum)

通过这几个求和代码我们可以看出:

除了求和范围不同,其他的都是一样的步骤进行运算,使得代码较为冗长,如果利用函数我们只需要调用并更改数据范围即可,可减少多余代码

,避免出错.

# 定义一个求和函数
def calcSum(beg,end):
    theSum = 0
    for i in  range (beg,end+1):
        theSum += i
    print(theSum)
# 调用函数
# 求 1-100 的和
calcSum(1,100)
# 求 300-400 的和
calcSum(300,400)
# 求 1-1000 的和
calcSum(1,1000)

1.函数的定义(分配任务)

2.函数的调用(开始完成任务)

# 先定义一个函数
# 如果只是定义,而不去调用,则函数体里面的代码就不会执行!
def test():
    print("hello")
    print("hello")
    print("hello")
#函数调用才会真正执行函数体里面的代码.
#函数经过一次定义之后,可以被调用多次!
test()
test()
test()
test()

❗注意:python中函数调用,要先定义后调用~ ~

    "先定义,后调用"就像是奥特曼一样先喊魔法口号,再释放魔法~

函数的调用是可以有多次的,同时每次调用的实参,也是可以不同的~ ~

函数的实参,就是在函数调用的时候,赋值给形参~

python中函数的形参和实参个数要匹配,对类型没有要求,程序才能运行~

也不是说.随便传入啥类型都行,

只要保证传入的参数类型,在函数体里面能够支持对应的运算操作,即可!!

def test(a):
    print(a)
test(10)
test(True)
test("hello")
def add(x,y):
    return x + y
print(add(1,2))
print(add(1.5,2.5))
print(add("hello"," world"))

Python中:

              警告:提示你代码可能存在问题,但是并不影响程序编译执行.

              错误:代码实打实的有问题!

3.函数的返回值-return

实际开发中,一般更倾向于第二种写法!

一个通用的编程原则:一个函数只做一件事!

第1个版本:既做了计算,又做了打印(和用户交互)

第2个版本:只做了计算,不关心如何和用户交互~

一旦后续需要改变和用户的交互方式,第二种写法就更有优势(不必修改代码了)

当前是通过控制台和用户交互的~ ~

逻辑 和 交互/界面 分离---->进一步的好处,解耦合(关联性的强弱)~

一个稍微复杂一些的程序中,经常会涉及到很多模块~

模块之间可能要进行交互~ ~

交互就会带来耦合,当然希望通过良好设计让耦合尽量低~ ~

# 一般多个 return 语句是搭配 分支语句 / 循环语句 的
def isOdd(num):
    """
    用来判断 num 是不是奇数! 如果是奇数就返回 True, 不是就返回 False
    :param num: 要判定的整数
    :return: 返回 True False 表示是不是奇数
    """
    if num % 2 == 0:
        return False
    else:
        return True
print(isOdd(10))
print(isOdd(17))
def isOdd(num):
    """
    用来判断 num 是不是奇数! 如果是奇数就返回 True, 不是就返回 False
    :param num: 要判定的整数
    :return: 返回 True False 表示是不是奇数
    """
    if num % 2 == 0:
        return False
    return True
print(isOdd(10))
print(isOdd(17))

python 中的一个函数可以返回多个值!!

(非常香的操作!!,C++,Java 都馋哭了)

C++,Java 调用一个函数一次只能返回一个值!!

--->Java 要想返回多个值,需要把多个值给包装成一个对象,返回这个对象~ ~

--->C++ 要想返回多个值,可以通过输出型参数(指针/引用)

虽然现在返回多个值,但是我只想要其中一部分,不关注其他的,~~

可以使用_来进行占位!

不要 x 了,只要 y,把 y 赋值给 b 即可!


今天的函数学习就到这里,感谢大家的支持与鼓励,我会继续加油!💪

目录
相关文章
|
11天前
|
Python 容器
Python学习的自我理解和想法(9)
这是我在B站跟随千锋教育学习Python的第9天,主要学习了赋值、浅拷贝和深拷贝的概念及其底层逻辑。由于开学时间紧张,内容较为简略,但希望能帮助理解这些重要概念。赋值是创建引用,浅拷贝创建新容器但元素仍引用原对象,深拷贝则创建完全独立的新对象。希望对大家有所帮助,欢迎讨论。
|
28天前
|
搜索推荐 Python
利用Python内置函数实现的冒泡排序算法
在上述代码中,`bubble_sort` 函数接受一个列表 `arr` 作为输入。通过两层循环,外层循环控制排序的轮数,内层循环用于比较相邻的元素并进行交换。如果前一个元素大于后一个元素,就将它们交换位置。
127 67
|
2天前
|
Python
Python学习的自我理解和想法(10)
这是我在千锋教育B站课程学习Python的第10天笔记,主要学习了函数的相关知识。内容包括函数的定义、组成、命名、参数分类(必须参数、关键字参数、默认参数、不定长参数)及调用注意事项。由于开学时间有限,记录较为简略,望谅解。通过学习,我理解了函数可以封装常用功能,简化代码并便于维护。若有不当之处,欢迎指正。
|
13天前
|
存储 索引 Python
Python学习的自我理解和想法(6)
这是我在B站千锋教育学习Python的第6天笔记,主要学习了字典的使用方法,包括字典的基本概念、访问、修改、添加、删除元素,以及获取字典信息、遍历字典和合并字典等内容。开学后时间有限,内容较为简略,敬请谅解。
|
17天前
|
存储 程序员 Python
Python学习的自我理解和想法(2)
今日学习Python第二天,重点掌握字符串操作。内容涵盖字符串介绍、切片、长度统计、子串计数、大小写转换及查找位置等。通过B站黑马程序员课程跟随老师实践,非原创代码,旨在巩固基础知识与技能。
|
22天前
|
Python
Python中的函数是**一种命名的代码块,用于执行特定任务或计算
Python中的函数是**一种命名的代码块,用于执行特定任务或计算
45 18
|
13天前
|
数据可视化 DataX Python
Seaborn 教程-绘图函数
Seaborn 教程-绘图函数
43 8
|
16天前
|
程序员 Python
Python学习的自我理解和想法(3)
这是学习Python第三天的内容总结,主要围绕字符串操作展开,包括字符串的提取、分割、合并、替换、判断、编码及格式化输出等,通过B站黑马程序员课程跟随老师实践,非原创代码。
|
13天前
|
Python
Python学习的自我理解和想法(7)
学的是b站的课程(千锋教育),跟老师写程序,不是自创的代码! 今天是学Python的第七天,学的内容是集合。开学了,时间不多,写得不多,见谅。
|
12天前
|
存储 安全 索引
Python学习的自我理解和想法(8)
这是我在B站千锋教育学习Python的第8天,主要内容是元组。元组是一种不可变的序列数据类型,用于存储一组有序的元素。本文介绍了元组的基本操作,包括创建、访问、合并、切片、遍历等,并总结了元组的主要特点,如不可变性、有序性和可作为字典的键。由于开学时间紧张,内容较为简略,望见谅。