zoukankan      html  css  js  c++  java
  • 定义函数

    调用函数
      Python内置了很多有用的函数,可直接调用
      调用函数需知道函数的名称和参数,使用可参照官方的API文档

      函数名其实就是指向一个函数对象的引用,完全可以把函数名赋给一个变量,相当于给这个函数起了一个别名

        a = abs
        print(a(-1)) #输出:1

    定义函数
      定义函数时,需要确定函数名和参数个数

        def function_name(param1,param2,...):
            ...
          return ...

      如果函数体内有return,函数体内部的语句在执行时,一旦执行到return时,函数就执行完毕,并将结果返回
      如果函数体内没有return,函数执行完毕后也会返回结果,只是结果为None,return None可以简写为return

    空函数
      如果想定义一个什么事也不做的空函数,可以用pass语句

        def nop():
          pass

      pass可用来作为占位符,比如现在还没想好怎么写函数的代码,就可以先放一个pass,让代码能运行起来,缺少了pass,代码运行就会有语法错误
      pass还可以用在其他语句里,如if语句

    参数检查
      当定义函数时,如果有必要,可先对参数做检查,通常包括:
        参数个数检查
        参数类型检查

    返回多个值
      函数可以返回多个值

      import math
    
      def move(x, y, step, angle=0):
        nx = x + step * math.cos(angle)
        ny = y - step * math.sin(angle)
        return nx, ny
    
      x, y = move(100, 100, 60, math.pi / 6)
      r = move(100, 100, 60, math.pi / 6)
    
      print(x, y) #输出:151.96152422706632 70.0
      print(r) #输出:(151.96152422706632, 70.0),返回值是一个tuple
      #在语法上,返回一个tuple可以省略括号,而多个变量可以按照tuple对应位置的值赋值
      #Python的函数返回多值其实就是返回一个tuple,但写起来更方便
  • 相关阅读:
    USACO Broken Necklace 通过了
    USACO Broken Necklace
    推荐顺序ACM
    usaco暂时无法访问
    格式
    稳定排序
    归并排序
    浅析Struts1和Struts2的Action线程安全问题
    判别式模型与生成式模型的区别
    远景能源一面
  • 原文地址:https://www.cnblogs.com/shiliye/p/10905447.html
Copyright © 2011-2022 走看看