zoukankan      html  css  js  c++  java
  • 函数复习

    一、函数
    1.为什么要使用函数?
    减少代码的冗余
    2.函数先定义后使用(相当于变量一样先定义后使用)
    3.函数的分类:
    内置函数:python解释器自带的,直接拿来用就行了
    自定义函数:根据自己的需求自己定义的函数
    def func(): #函数名打印出来的是内存地址
    '''注释'''
    函数体
    4.函数定义都干了些什么事?
    只检测语法,不执行代码
    5.函数就是一段功能,尽量把函数名定义的有意义
    6.定义函数的三种方式:
      有参数的函数:就是接受外部传进来的值,进行一系列的运算,最后吧结果返回出来
      无参数的函数:通常只是做一下操作而已
      空函数:什么事情都不做就是一个空函数(即便是一个空函数,他也会有如下属性)
    7.函数的返回值:可返回任意类型的值
      什么时候需要有返回值:具体情况具体分析
      什么时候没有返回值:具体情况具体分析
    8.yield和return的区别
      yield 停在那呢,挂起了
      yield 能返回多次值;return 返回一次值
      yield 保存函数状态
    9.函数的调用:函数名加()

    10函数的参数

    形参:
    1 位置形参:必须被传值
    2 默认参数:调用时可不传值
    需要注意的问题:
    只能在位置形参的后面定义
    只在定义阶段被赋值一次
    通常默认参数的值应该是不可变类型
    实参:
    1:位置实参:与形参一一对应
    2:关键字实参:指名道姓地传值,即便是不按照位置定义也能准确的为指定的形参传值
    可以混用1和2两种形式,但需要注意的问题:
    1必须在2之前
    不能为同一个形参重复传值

    可变长度的参数:从实参的角度推算出形参对应的形式*和**
    针对按照位置定义的实参冗余的部分,会被形参中的*保存成元组的形式赋值给args
    针对按照关键定义的实参冗余的部分,会被形参中的**保存成字典的形式赋值给kwargs
    强调:
    如果实参中出现了*和**,第一时间打散了去看。
    11
    命名关键字参数(了解)
    定义:在定义阶段,*之后定义的形参称之为命名关键字参数
    特点:在调用阶段,该类参数必须以关键字的形式被传值
    def foo(x,y,*args,a=11111111111111111,b):
    print(x)
    print(y)
    print(args)
    print(a)
    print(b)
    #
    foo(1,2,1,2,3,4,5,b=20)
  • 相关阅读:
    poj 3280 Cheapest Palindrome(区间DP)
    POJ 2392 Space Elevator(多重背包)
    HDU 1285 定比赛名次(拓扑排序)
    HDU 2680 Choose the best route(最短路)
    hdu 2899 Strange fuction (三分)
    HDU 4540 威威猫系列故事――打地鼠(DP)
    HDU 3485 Count 101(递推)
    POJ 1315 Don't Get Rooked(dfs)
    脱离eclipse,手动写一个servlet
    解析xml,几种方式
  • 原文地址:https://www.cnblogs.com/1a2a/p/7412258.html
Copyright © 2011-2022 走看看