zoukankan      html  css  js  c++  java
  • 06、抽象--函数

    Python函数

    #函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。

    #函数能提高应用的模块性,和代码的重复利用率。



    1、定义一个函数
    定义函数简单的规则:
        1、函数代码块以def关键词开头,后接函数标识符名称和圆括号()。
        2、任何传入参数和自变量必须放在圆括号中间。圆括号之间可以用于定义参数。
        3、函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。
        4、函数内容以冒号起始,并且缩进。
        5、Return[expression]结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回 None。



    实例:
    图1:                                             图2:                                                                                    


                             

    图3:                                              图4:
                                                                               
     

                                               

         


    2、return :
    返回值,跟print不同的是他返回的值是可以赋给其他变量的,如果定义函数中return后面还有代码将不会执行,类似break。


    3、修改参数

    如果两个变量同时关联一个列表,A变量被修改之后B变量也会同时修改。生成副本可以使两个变量的值不再关联

    语法是h2=h1[:] 如图2:

    图1:                                                                   图2:                                 


                                  


    3、global
    将变量定义为全局变量,可以在全局使用(包括定义函数时调用)语法 global 变量名

     

     4、def(x,*y,**z):
    收集其他的位置,*y收集为元祖,**z收集为字典。
    注:值和参数的位置是对应的,收集为字典应使用key=valuse这种方式才能转化语法:def funtion(x,y*,**z):
    图1:                                                      图2:                                                                    


                                                


    图3:


    5、switch:
    使用字典和函数的结合


    6、isinstance:是实例,返回布尔值 做判断用,语法:isinstance(object, class-or-type-or-tuple) -> bool
    1>判断传入的参数是否为int或float
    >>> def my_abs(x):
     if not isinstance(x,(int,float)):
         raise TypeError("bad openrand type")
     if x >= 0 :
         return x
     else:
         return -x
    >>> my_abs("a")   
    Traceback (most recent call last):
      File "<pyshell#22>", line 1, in <module>
        my_abs("a")
      File "<pyshell#20>", line 3, in my_abs
        raise TypeError("bad openrand type")
    TypeError: bad openrand type

























  • 相关阅读:
    5 构建Mysql+heartbeat+DRBD+LVS集群应用系统系列之生产环境下drbd裂脑处理
    elk系列8之logstash+redis+es的架构来收集apache的日志
    elk系列7之通过grok分析apache日志
    elk系列6之tcp模块的使用
    elk系列5之syslog的模块使用
    elk系列4之kibana图形化操作
    elk系列3之通过json格式采集Nginx日志
    elk系列2之multiline模块的使用
    Docker探索系列2之镜像打包与DockerFile
    elk系列1之入门安装与基本操作
  • 原文地址:https://www.cnblogs.com/hero-blog/p/4113515.html
Copyright © 2011-2022 走看看