#try except
try:
a = int(input("输入被除数:"))
b = int(input("输入除数:"))
c = a / b
print("您输入的两个数相除的结果是:", c )
except (ValueError, ArithmeticError):
print("程序发生了数字格式异常、算术异常之一")
except :
print("未知异常")
print("程序继续运行")
#获取错误信息
try:
# fis = open("a.txt");
a = 10
b = "a"
c = a / b
except (TypeError,AttributeError) as e:
print("cuowu")
print(e.args) # 访问异常的错误编号和详细信息
print("goon")
#raise
raise ZeroDivisionError
raise ZeroDivisionError("除数不能为零")
#详细信息
import sys
try:
x = int(input("请输入一个被除数:"))
print("30除以",x,"等于",30/x)
except:
print(sys.exc_info())
print("其他异常...")
#assert断言
assert 1 == 1
a = 2
info = "a的值不为0,a="+str(a)
assert a == 0,info
#doctest模块,调用testmod()执行当前py文件中含有测试的内容
#与if __name__=='__main__': 一起用,则只有直接执行该文件会进行测试
def square (x):
'''
一个用于计算平方的函数
例如
>>> square(2)
4
>>> square(3)
9
>>> square(-3)
9
>>> square(0)
0
'''
return x * 2 # ①、故意写错的
class User:
'''
定义一个代表用户的类,该类包含如下两个属性:
name - 代表用户的名字
age - 代表用户的年龄
例如
>>> u = User('fkjava', 9)
>>> u.name
'fkjava'
>>> u.age
9
>>> u.say('i love python')
'fkjava说: i love python'
'''
def __init__(self, name, age):
self.name = 'fkit' # ②、故意写错的
self.age = age
def say(self, content):
return self.name + '说: ' + content
if __name__=='__main__':
import doctest
doctest.testmod()
#pydoc模块
# python -m pydoc 模块名
# python -m pydoc