数据结构与算法学习记录(二)python知识点记录

例外/异常处理程序:

 学习C语言或者Java中,编译器可以捕获很多语法错误,但是在Python中,只有在程序运行后才会执行语法检查。所以,只有在运行或测试程序时,才会真正知道该程序能不能正常运行,因此,掌握一定的异常处理语句和程序调试方法是十分必要的。

程序中常见的一些错误,已经封装好的:

处理异常的语法: 

 举个栗子:

def division():
    '''功能:分西瓜'''
    print("\n===================== 分西瓜了 =====================\n")
    watermelon = int(input("请输入西瓜的个数:"))  
    person = int(input("请输入来了几个人:"))
    result = watermelon // person  
    remain = watermelon - result * person  
    if remain > 0:
        print(watermelon, "个西瓜,平均分给", person, "个人,每人分", result,
              "个,剩下", remain, "个。")
    else:
        print(watermelon, "个西瓜,平均分给", person, "个人,每人分", result, "个。")


if __name__ == '__main__':     
    try:  # 捕获异常
        division()  # 调用分苹果的函数
    except ZeroDivisionError:  # 处理异常
        print("\n出错了 ~_~ ——西瓜不能被0个小朋友分!")

关于if __name__= '__main__'的解释:一个python文件通常有两种使用方法,第一是作为脚本直接执行,第二是 import 到其他的 python 脚本中被调用(模块重用)执行。因此 if __name__ == 'main': 的作用就是控制这两种情况执行代码的过程,在 if __name__ == 'main': 下的代码只有在第一种情况下(即文件作为脚本直接执行)才会被执行,而 import 到其他脚本中是不会被执行的。(援引自农村詹姆斯的文章:Python中if __name__ == '__main__':的作用和原理_二黑的博客-CSDN博客

也可以加else,则语法变为:

else 后面的程序段为没有异常时执行的语句

异常的finally:

finally表示的是无论如何都要执行的语句:

函数的定义与使用:

函数的封装:def进行封装

 例:

def division():
    '''功能:分西瓜'''
    print("\n===================== 分西瓜了 =====================\n")
    watermelon = int(input("请输入西瓜的个数:")) 
    person = int(input("请输入来了几个人:"))
    result = watermelon // person  
    remain = watermelon - result * person 
    if remain > 0:
        print(watermelon, "个西瓜,平均分给", person, "个人,每人分", result,
              "个,剩下", remain, "个。")
    else:
        print(watermelon, "个西瓜,平均分给", person, "个人,每人分", result, "个。")
可以用return进行返回。

关于形参和实参的部分同c语言别无二致,因此按下不表。

关于定义函数的参数:

一种是直接定义好参数,有个数  例如:

 另一种则是不知道参数的数量,那么定义方法如下:

在传入参数的时候,有两种传入参数的方法:

1.指定位置时,即不带key的参数,要按位置传入。

2.带key的参数可以不按位置传入,但是如果要两种混着用位置参数(即不带key的)一定要在前面。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值