美文网首页
Python 微入门(二)

Python 微入门(二)

作者: 奇点er | 来源:发表于2022-07-07 22:32 被阅读0次

    继续前篇 Python 微入门(一) 中的未完之事,今天把剩下的几点讲了,算是对 Python 的基础语法有了一定的了解。

    今天主要从 字典、条件、循环、异常、函数几个方面进行演示。

    字典

    上篇文章中提到的序列,只是我们描述现实世界中集合的众多抽象中的一种。比如一个班级的学生的名字可以放进一个序列,一个年级的所有班级可以放进一个序列等,但当我们想对具体的学生进行详尽描述的时候,比如描述学生的身高、性别、年龄、兴趣爱好,当然序列也可以做到,序列就显得有些力不从心,这时候字典就排上用场了,简单示例如下。

    # 最简单的方式定义序列就是一对花括号
    >>> dict = {}
    # 查看定义的字典
    >>> dict
    {}
    # 向序列里面添加值 比如有个名称叫张三的同学
    >>> dict['name']='张三'
    >>> dict
    {'name': '张三'}
    # 张三的年龄是 21
    >>> dict['age']=21
    >>> dict
    {'name': '张三', 'age': 21}
    

    通过字典,我们可以更详尽地描述一个对象的各种属性。

    条件

    不论是谁,只要想获得一份正经工作,都需要一定的知识经验的储备,那么公司在招聘的时候,就会根据职级的不同,设置不同难度的关卡,进而筛选出自己想要的人。这种筛选在程序里面的抽象就是条件语句。

    基本语法如下:

    if condition:
      dosomething
    elif:
      do other things
    else:
      pass
    

    现在假设一个场景,有五个年龄分布不同(21,22,23,24,25)的人分别去一家公司面试,但是公司只招年龄符合要求(不小于22岁)的人员。具体代码如下:

    # 将所有人的年龄装进一个序列
    ages = [21,22,23,24,25]
    # 循环,稍后会讲
    for age in ages:
      # 设置的条件 即不小于22
      if age >= 22:
        # 满足条件
        print(f'你的年龄是 {age},符合要求,被录取了')
      else:
        # 不满足条件
        print(f'你的年龄是 {age}, 很遗憾,不符合要求')
    

    运行以上代码,可以得到如下结果:

    你的年龄是 21, 很遗憾,不符合要求
    你的年龄是 22,符合要求,被录取了
    你的年龄是 23,符合要求,被录取了
    你的年龄是 24,符合要求,被录取了
    你的年龄是 25,符合要求,被录取了
    

    可以看到,结果正是我们所预期的。

    循环

    在上一小节中我们已经有提到循环的使用,那究竟什么是循环,循环也叫遍历,主要作用的对象是序列,序列是将我们需要的数据装进去,那么循环就是将序列中的数据一项项拿出来,进行下一步的操作。已经讲了序列,字典,这个时候我们就可以一起练习一下,假设一个场景,班里面有个三个同学,我们需要记录他们的姓名、年龄、性别,那应该怎么做呢。首先我们可以用字典对每个同学的详细信息进行描述,然后将每个同学放进一个序列,这样就根据我们想要的信息描述了这个班的同学,示例如下:

    classmates = [{'name':'张三','age':19,'gender':'男'},{'name':'李四','age':20,'gender':'男'},{'name':'莉莉','age':18,'gender':'女'}]
    

    这样我们就用 classmates 这个序列描述了这个班同学的基本信息。现在来了位新老师,为了给同学们留个好印象,想提前了解一下各位同学的基本信息,他需要怎么做呢?这时候循环就派上用场了。循环的基本语法如下

    for <集合里的具体的某一项> in <集合>:
      # 这里就可以展示某一项的值了
    

    具体代码示例如下:

    for student in classmates:
      print(f"姓名: {student['name']}, 年龄: {student['age']}, 性别: {student['gender']}")
    

    运行代码,结果如下:

    姓名: 张三, 年龄: 19, 性别: 男
    姓名: 李四, 年龄: 20, 性别: 男
    姓名: 莉莉, 年龄: 18, 性别: 女
    

    异常

    显示世界中的很多事情未必总能尽如人意,程序亦是如此,总会有意外出现。比如我们想用 Python 写一个简单的除法计算器。我们先定义两个数让它们相除,正常情况下都不会有问题,比如下面的情况;

    >>> a=4
    >>> b=2
    >>> a/b
    # 运行结果正常得到 2.0
    2.0
    

    但总有些意外,比如不小心将 b 的值记作了0,那程序就会出错

    >>> a=4
    >>> b=0
    >>> a/b
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    ZeroDivisionError: division by zero
    

    程序出错就是我们常说的 Bug,这会影响到程序的正常运行,甚至出现所谓的宕机,进而影响到正常运行的业务,所以我们应该尽量避免不可知的异常的出现,或者即使出现了异常,我们也早做了准备,不会发生严重的事故。这时候就要用到 异常表达式了,语法如下:

    try:
      # do something...
    except:
      # 异常提示,引起注意
    

    则上面的例子我们可以进行改写如下:

    try:
      a=4
      b=0
      a/b
    except:
      print(f'出错啦,a是 {a}, b是 {b}')
    

    运行结果如下

    出错啦,a是 4, b是 0
    

    当然,只有在出错的时候才会打印出异常信息

    函数

    在我们编写一个大型项目的时候,可能会写出很多类似的代码,还是以上面的除法计算器为例子,当我们计算完 4除以2之后,想计算3除以2时又要重头写一遍代码,这种写代码的方式既繁琐在后期也很难维护。那么用函数来实现相同部分带啊的抽象再合适不过了,函数的基本定义如下:

    def function_name():
      # do something
    

    使用函数的方法也很简单, 直接使用函数名称调用执行就可以了,如下:

    function_name()
    

    具体除法计算器的例子可以用函数编写如下

    def division_calculator(a,b):
      try:
        print(f'{a} 除以 {b} 的结果是: {a/b}')
      except:
        print(f'出错啦,a是 {a}, b是 {b}')
    

    尝试 3 除以2

    >>> division_calculator(3,2)
    3 除以 2 的结果是: 1.5
    

    尝试 1 除以 0

    >>> division_calculator(1,0)
    出错啦,a是 1, b是 0
    

    在尝试 3 除以2

    >>> division_calculator(3,2)
    3 除以 2 的结果是: 1.5
    

    编写恰当的函数,对提高编程效率有很大的帮助。

    至此,Python 微入门就告一段落了,正如标题所示,要真正学会用Python实现自己的想法,这些也只是基础中的基础,后续有机会再探讨。

    相关文章

      网友评论

          本文标题:Python 微入门(二)

          本文链接:https://www.haomeiwen.com/subject/ijdzvrtx.html