文章目录

  • 异常处理
  • 逻辑运算符
    • 循环的高级用法

      异常处理
      1 基本用法
      应对所有情况

      try:
        1/0
      except:
        print('某原因异常')

      应对特定异常情况

      try:
        1/0
      except ZeroDivisionError:
      print('除数不应为0') try:
      1/0
      except ZeroDivisionError as q:
      print(q)

      混合使用

      def foo(a):
      try :
      100/a
      except ZeroDivisionError :
      print('除数不应为零')
      except :
      print('未知错误') foo(0)
      foo('ry1')
      除数不应为零
      未知错误

      2高级用法

      try :
      print(1/a)
      except:
      print('except')
      else:
      print('else')
      finally:
      print('finally')

      注:
      except可有多组;
      try中未有异常时,执行else;
      finally一定执行

      try-except-else-finally遇到函数时

      def f(a):
      try:
      print(1 / a)
      return 1/a
      except:
      print('except')
      return 'except'
      else :
      print('else')
      return 'else'
      finally:
      print('finally')
      return 'finally' print(f(0))
      print(f(2))
      except
      finally
      finally
      0.5
      finally
      finally

      注:
      无论return在哪,finally一定执行;
      try中有return,else不执行;
      finally中的return会覆盖之前所有的return

      逻辑运算符
      and or not
      and ⇔ \Leftrightarrow⇔ exp1 if not exp1 else exp2
      or ⇔ \Leftrightarrow⇔ exp1 if exp1 else exp2
      and 和 or不一定返回True 或 False,而是得到最后一个被计算的表达式,
      但not一定得到True 或 False。

      循环的高级用法

      for in:
      ***
      else:
      *** while :
      ***
      else:
      ***

      else扩展:玄幻完成的奖励( 循环没有被break退出时执行)

      for c in 'python':
      
          if c=='y':
      continue
      print(c,end=',') else:
      print('正常退出') p,t,h,o,n,正常退出
      for c in 'python':
      
          if c=='y':
      break
      print(c,end=',') else:
      print('正常退出') p,

Python进阶一的更多相关文章

  1. Python进阶:函数式编程实例(附代码)

    Python进阶:函数式编程实例(附代码) 上篇文章"几个小例子告诉你, 一行Python代码能干哪些事 -- 知乎专栏"中用到了一些列表解析.生成器.map.filter.lam ...

  2. Python进阶 - 对象,名字以及绑定

    Python进阶 - 对象,名字以及绑定 1.一切皆对象 Python哲学: Python中一切皆对象 1.1 数据模型-对象,值以及类型 对象是Python对数据的抽象.Python程序中所有的数据 ...

  3. Python进阶-继承中的MRO与super

    Python进阶-继承中的MRO与super 写在前面 如非特别说明,下文均基于Python3 摘要 本文讲述Python继承关系中如何通过super()调用"父类"方法,supe ...

  4. Python进阶 - 命名空间与作用域

    Python进阶 - 命名空间与作用域 写在前面 如非特别说明,下文均基于Python3 命名空间与作用于跟名字的绑定相关性很大,可以结合另一篇介绍Python名字.对象及其绑定的文章. 1. 命名空 ...

  5. python进阶学习笔记(一)

    python进阶部分要学习的内容: 学习目标: 1.函数式编程 1.1,什么是函数式编程 函数式编程是一种抽象计算的编程模式 不同语言的抽象层次不同: 函数式编程的特点: python支持的函数式编程 ...

  6. 【python进阶】详解元类及其应用2

    前言 在上一篇文章[python进阶]详解元类及其应用1中,我们提到了关于元类的一些前置知识,介绍了类对象,动态创建类,使用type创建类,这一节我们将继续接着上文来讲~~~ 5.使⽤type创建带有 ...

  7. 【python进阶】Garbage collection垃圾回收2

    前言 在上一篇文章[python进阶]Garbage collection垃圾回收1,我们讲述了Garbage collection(GC垃圾回收),画说Ruby与Python垃圾回收,Python中 ...

  8. Python进阶 函数式编程和面向对象编程等

    函数式编程 函数:function 函数式:functional,一种编程范式.函数式编程是一种抽象计算机的编程模式. 函数!= 函数式(如计算!=计算机) 如下是不同语言的抽象 层次不同 高阶函数: ...

  9. 【python进阶】深入理解系统进程2

    前言 在上一篇[python进阶]深入理解系统进程1中,我们讲述了多任务的一些概念,多进程的创建,fork等一些问题,这一节我们继续接着讲述系统进程的一些方法及注意点 multiprocessing ...

  10. Python进阶:如何将字符串常量转化为变量?

    前几天,我们Python猫交流学习群 里的 M 同学提了个问题.这个问题挺有意思,经初次讨论,我们认为它无解. 然而,我认为它很有价值,应该继续思考怎么解决,所以就在私密的知识星球上记录了下来. 万万 ...

随机推荐

  1. 如何给div、p添加onload事件?

    前提 其实只有 <body>.<frame>.<iframe>.<img>.<link>.<script>.<style& ...

  2. Cobbler 2.x安装与配置

    软件环境 Centos7.3 Cobbler 2.8.1 1.下载.编译和安装 创建自动安装脚本cobbler-install.sh #!/bin/bash # File Name: /data/sr ...

  3. canvas的介绍

    1.我们前端的绘图技术有哪些: 统计图表:echarts 实时走势图:canvas: 在线画板:魔猴: HTML5游戏:three.js 2.我这里主要讲的是canvas绘图: <canvas& ...

  4. React 组件的生命周期方法

    React 组件的生命周期方法 按渲染顺序: 1: componentWillMount() – 在渲染之前执行,在客户端和服务器端都会执行. 2: componentDidMount() – 仅在第 ...

  5. .NET Core 轻量级模板引擎 Mustachio

    一. 前言 Mustachio 是一款轻量级且强大的模板引擎,可以用在网页渲染.代码生成器等需要模板引擎的场景.我用它是用在配置文件模板化的场景,在配置文件里面编写一些模板语法,然后从 Cloud 拉 ...

  6. C#中类的实例化过程

    创建某个类型的第一个实例时,所进行的操作顺序为:1.静态变量设置为02.执行静态变量初始化器3.执行基类的静态构造函数4.执行静态构造函数5.实例变量设置为06.执行衯变量初始化器7.执行基类中合适的 ...

  7. Centos7通过yum跟源码编译安装Nginx

    源码编译安装 http://nginx.org/en/download.html 到官网下载,然后用XFTP上传到root目录 把文件解压出来 tar -zxvf nginx-1.16.0.tar.g ...

  8. tornado框架中redis使用

    一.安装依赖 pip3 install tornado-redis 二.导入模块 import tornadoredis 三.创建redis对象 import tornadoredis CONNECT ...

  9. Android Studio 3.0+ Record Espresso Test 自动化测试

    准备工作 1.将android studio 版本升级到3.0+2.百度下载夜神模拟器 夜神模拟器的基本设置 PS:以上就是夜神模拟器的基本设置 Android Studio 连接夜神模拟器 //夜神 ...

  10. [Go] golang定时器与redis结合

    golang定时器与redis结合,每隔1秒ping一下,每隔20秒llen一下队列的长度 package main import ( "fmt" "time" ...