Pyhon基础学习(三)--函数,模块,异常等

一,函数
    函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。函数能提高应用的模块性,和代码的重复利用率。
    你已经知道Python提供了许多内建函数,比如print()。但你也可以自己创建函数,这被叫做用户自定义函数。
    
    定义一个函数
    你可以定义一个由自己想要功能的函数,以下是简单的规则:

    1,函数代码块以 def 关键词开头,后接函数标识符名称和圆括号()。
    2,任何传入参数和自变量必须放在圆括号中间。圆括号之间可以用于定义参数。
    3,函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。
    4,函数内容以冒号起始,并且缩进。
    5,return [表达式] 结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回 None。
    
    语法
        def functionname( parameters ):
           "函数_文档字符串"
           function_suite
           return [expression]
    实例
    def printme( str ):
       "打印传入的字符串到标准显示设备上"
       print(str)
       return
    函数调用:
    # 调用函数
    printme("我要调用用户自定义函数!")
    printme("再次调用同一函数")
    
二,参数:
    1,参数传递
           
        在 python 中,strings, tuples, 和 numbers 是不可更改的对象,而 list,dict 等则是可以修改的对象。

            1,不可变类型:变量赋值 a=5 后再赋值 a=10,这里实际是新生成一个 int 值对象 10,再让 a 指向它,而 5 被丢弃,不是改变a的值,相当于新生成了a。

            2,可变类型:变量赋值 la=[1,2,3,4] 后再赋值 la[2]=5 则是将 list la 的第三个元素值更改,本身la没有动,只是其内部的一部分值被修改了。

        python 函数的参数传递:

            1,不可变类型:类似 c++ 的值传递,如 整数、字符串、元组。如fun(a),传递的只是a的值,没有影响a对象本身。比如在 fun(a)内部修改 a 的值,只是修改另一个复制的对象,不会影响 a 本身。

            2,可变类型:类似 c++ 的引用传递,如 列表,字典。如 fun(la),则是将 la 真正的传过去,修改后fun外部的la也会受影响

        python 中一切都是对象,严格意义我们不能说值传递还是引用传递,我们应该说传不可变对象和传可变对象。
        
    2,默认参数和不定长参数
       默认参数
         def printinfo( name, age = 35 ):
           "打印任何传入的字符串"
           print "Name: ", name
           print "Age ", age
           return
         
         #调用printinfo函数
         printinfo( age=50, name="miki" )
         printinfo( name="miki" )
        
        不定长参数
        # 可写函数说明
        def printinfo( arg1, *vartuple ):
           "打印任何传入的参数"
           print "输出: "
           print arg1
           for var in vartuple:
              print var
           return
         
        # 调用printinfo 函数
        printinfo( 10 )
        printinfo( 70, 60, 50 )
    3,变量和变量的作用域
       变量有局部变量和全局变量
       局部变量只能在其被声明的函数内部访问,而全局变量可以在整个程序范围内访问。调用函数时,所有在函数内声明的变量名称都将被加入到作用


三,异常
         捕捉异常可以使用try/except语句。
            try/except语句用来检测try语句块中的错误,从而让except语句捕获异常信息并处理。
            如果你不想在异常发生时结束你的程序,只需在try里捕获它。
         实例
         try:
            fh = open("testfile", "w")
            fh.write("这是一个测试文件,用于测试异常!!")
         except IOError:
            print "Error: 没有找到文件或读取文件失败"
         else:
            print "内容写入文件成功"
            fh.close()       
            
        try-finally 语句
        
        try:
            fh = open("testfile", "w")
            fh.write("这是一个测试文件,用于测试异常!!")
        finally:
            print "Error: 没有找到文件或读取文件失败"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值