python学习-第十一篇

"""
Version: 0.1
Author: freshbin
Date: 2019年8月21日
"""

print("=================================错误 start================================================")

# Print('ERROR')
# NameError: name 'Print' is not defined

print("=================================错误 end================================================")





print("=================================异常 start================================================")

# s = 1/0
# print(s)
# ZeroDivisionError: division by zero
# TypeError: unsupported operand type(s) for /: 'int' and 'str'

print("=================================异常 end================================================")





print("=================================处理异常 start================================================")

while True:
    try:
        s = input('Enter a number:')
        a = 1 / int(s)
    except ZeroDivisionError:
        print('ZeroDivisionError')
    except TypeError:
        print('TypeError')
    except ValueError:
        print('ValueError')
    except:
        print('Other exception')
    else:
        print('a的值为:{}'.format(a))
        break

print("=================================处理异常 end================================================")





print("=================================抛出异常 start================================================")

class ShortInputException(Exception):
    '''一个由用户定义的异常类'''
    def __init__(self, length, atleast):
        Exception.__init__(self)
        self.length = length
        self.atleast = atleast

try:
    text = input('Enter something -->')
    if len(text) < 3:
        raise ShortInputException(len(text), 3)
except EOFError:
    print('EOFError')
except ShortInputException as ex:
    print(('ShortInputException: The input was ' + '{0} long, exception at least {1}').format(ex.length, ex.atleast))
else:
    print('No exception was raised.')

print("=================================抛出异常 end================================================")





print("=================================try...finally start================================================")

import sys
import time

f = None
try:
    f = open("poem.txt")
    while True:
        line = f.readline()
        if len(line) == 0:
            break
        print(line, end=' ')
        sys.stdout.flush()
        print('Press ctrl+c now')
        time.sleep(2)
except IOError:
    print('Could not find file poem.txt')
except KeyboardInterrupt:
    print('KeyboardInterrupt')
finally:
    if f:
        f.close()
    print('close the file')
print("=================================try...finally end================================================")





print("=================================with语句 start================================================")

with open("poem.txt") as f:
    for line in f:
        print(line, end=' ')

print("=================================with语句 end================================================")

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值