python 函数基础

Posted 大蟒在线

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 函数基础相关的知识,希望对你有一定的参考价值。

函数

  • 定义:具有特定功能的一段代码

  • 优点:

    • 解决代码的重复书写问题

    • 可以将功能的实现者和使用者分开,提高开发效率

    • 增加的代码的可移植性

  • 分类:

    • 库函数:print、input、abs等

    • 自定义:用户自己封装的函数

  • 格式:


    def 函数名([参数列表]):
    函数体

    []表示可选,参数可以没有,也可以有多个。

  • 函数名:

    • 遵循标识符的命名规范(与变量命名相同)

  • 函数调用:

    • 函数定以后不会执行,需要调用才执行

    • 调用:函数名([参数])

  • 示例:


    # 无参无返回值
    def print_hello():
       print(‘Hello‘)
    ?
    # print_hello()
    ?
    # 带参无返回值
    def print_n_hello(n):
    for i in range(n):
        print(‘Hello‘)  
    ?
    # print_n_hello(5)
    ?
    # 带参有返回值
    def add(a, b):
    c = a + b
    # 返回结果
    return c
    print(add(3, 5))
  • 函数参数

    • 形参:形式参数,函数定义处的参数

    • 实参:实际参数,函数调用处的参数

    • 必传参数:也叫位置参数,前面定义的函数中使用的都是必传参数,调用时的形式必须要与定义的一致。

    • 默认参数:就是有默认值的参数,必须放在最后

    • 可变长度参数:函数调用时传递必定义时的参数要多,多出来的参数会保存在args和kwargs中


    def show(a, b=‘默认值‘):
       # a就是必传参数
       print(a)
       # b就是默认参数,就是有默认值的参数,必须放在最后
       print(b)
    ?
    # show(1, 2)
    # 关键字参数,传递参数的时候指定了名字,顺序就无所谓了
    # show(b=456, a=123)
    ?
    def var_len_args(a, b, name=‘默认名称‘, *args, **kwargs):
       print(a)
       print(b)
       print(name)
       # args是一个元组,用来存放所有的多出来的位置参数
       print(args)
       # kwargs是一个字典,用来存放所有的多出来的默认参数
       print(kwargs)
    ?
    var_len_args(1, 2, 3, 4, age=18)  
  • *的特殊用法


 def show(a, b):
     print(a, b)
?
 l = [1, 2]
 # 略显啰嗦
 # show(l[0], l[1])
 # 精简方法
 show(*l)
?
?
 def show2(a=‘aa‘, b=‘bb‘):
     print(a, b)
?
 d = {‘a‘:‘apple‘, ‘b‘:‘banana‘}
?
 # show2(a=d[‘a‘], b=d[‘b‘])
 # 上面方式的简单书写方法
 show2(**d)
  • 练习:

    • 前面所有的练习,能用函数的就封装成函数

    • 封装函数:生成随机的字符串,参数:长度(默认为4)、类型(默认为0)

    • 试着查找并学习各种数据类型相关的函数




























































以上是关于python 函数基础的主要内容,如果未能解决你的问题,请参考以下文章

201555332盛照宗—网络对抗实验1—逆向与bof基础

13 个非常有用的 Python 代码片段

[Go] 通过 17 个简短代码片段,切底弄懂 channel 基础

逆向及Bof基础实践

20155201 李卓雯 《网络对抗技术》实验一 逆向及Bof基础

在 Python 多处理进程中运行较慢的 OpenCV 代码片段