标签搜索

函数—Python基础授课备课

Lan
Lan
2021-07-23 / 0 评论 / 33 阅读 / 正在检测是否收录...

第三章 函数

自定义函数

C#的方法≈Python的函数

定义函数

以找最大数的实现为例,分别由C#和Python来写 首先是C#

public int find_max(int num1, int num2)
    {
        if (num1 > num2)
        {
            return num1;
        }
        else
        {
            return num2;
        }
    }

然后是Python

def find_max(a, b):
    """这是一个获取最大值的函数"""
    if a > b:
        return a
    else:
        return b

因此相较于C#,Python定义一个函数只需要以下几点:

  1. def关键词
  2. 方法名
  3. 圆括号里面放参数,都不需要定义类型
  4. 冒号,然后换行缩进
  5. 方法体
  6. 可有可无的return

Python函数
此图来自菜鸟教程

函数传值与返回

在C#里面我们知道,参数分实参和形参,反正就是要一个带数据类型的关键词

在Python中,参数定义有下面这几种方式

  1. (arg1,arg2,...):直接放参数名接受的
  2. (arg1.arg2=value2,...) 给参数设置默认值的
  3. (arg1,arg2,*args) 直接懒得定义的,除了前面两个定义的参数外,其他的都存在args这个元祖里面
  4. (arg1,arg2,**kwargs) 直接懒得定义的之我不仅懒得定义但我还就要给默认值的,除了已定义的,其他的都存在kwargs字典里面

Python里面的返回值就比较随意了,想返回我就来个return,不想返回我就不写,诶我就是玩儿。

函数的调用

直接函数名然后括号里面放值就可以了呗,轻轻松松。

 find_max(1, 2)

这样就完成了调用,我们还可以把这个函数当成一个值赋给变量。

 max_value = find_max(1, 2)

甚至还可以直接输出这个函数,如有返回值就输出返回值,没有就输出?自己试。

 print(find_max(1, 2))

Python传的是值还是地址

在C#里面,如果传的是地址,在方法里面改变变量,外面的也会变,那在Python里面呢? 在Python里面都不是,而是“传对象引用”

  1. 如果接受到的是可变对象,那就可以修改原始值:列表,字典
  2. 如果接受到的是不可变对象,那就不可以修改原始对象:字符串,元组,数字
    改变值不

Python字符串的那些骚操作

这里就没什么好说的了,直接这样查看字符串有哪些方法了。
字符串方法

Python列表的那些骚操作

同上,也没什么好说的了
列表方法

集合的方法

集合方法

常用函数

print()

输出

type()

数据类型

len()

长度

0

评论 (0)

取消