Python_函数定义

  • 函数定义格式

    def <函数名>(参数):
          [函数体]
          [返回值]
    
  • 引用函数:import

    from <文件名(不含后缀)> import <方法名>
    
    • 实例:
      D:\Demo>copy con My_Abs.py
      def my_abs(x):
          if x<0:
             return -x
          return x^Z
      已复制         1 个文件。
      
      D:\Demo>python
      Python 3.6.4 (v3.6.4:d48eceb, Dec 19 2017, 06:04:45) [MSC v.1900         32 bit (Intel)] on win32
      Type "help", "copyright", "credits" or "license" for more information.
      >>> from My_Abs import my_abs
      >>> my_abs(-99)
      99
      >>> my_abs(1009)
      1009
      

- 空函数:pass

>>> def nop():
...     pass
>>>nop()
>>>

pass是什么都不做,为了防止语法错误,又暂时不定义函数可用pass做占位使用

- 参数检查:isinstance()

>>> def my_abs(x):
...   if not isinstance(x,(int,float)):
...         raise TypeError('参数错了')
...   if x<0:
...         return -x
...   return x
...
>>> my_abs(5)
5
>>> my_abs(5,5)
Traceback (most recent call last):
  File "", line 1, in 
TypeError: my_abs() takes 1 positional argument but 2 were given
>>> my_abs('uu')
Traceback (most recent call last):
  File "", line 1, in 
  File "", line 3, in my_abs
TypeError: 参数错了

isinstance()中的后面两个参数是限制参数的类型,不是就报错

  • 多返回值

    >>> def get_contrary(x):
    ...     a=-x
    ...     return x,a
    ...
    >>> l = get_contrary(-4)
    >>> l
    (-4, 4)
    >>> x,y=get_contrary(9)
    >>> x
    9
    >>> y
    -9
    
    实际上,返回多个值是生成了一个tuple,由上的(-4,4)可知

你可能感兴趣的:(Python_函数定义)