1.异常:即便Python程序的语法是正确的,在运行它的时候,也有可能发生错误。运行期检测到的错误。
2.写法如下
try:
语句体
except 异常类型:
处理语句
except 异常类型:(可多次写不同类型)
处理语句
3.finally:一定会执行
def appa(): try: a=int(input('输入一个数')) b=int(input('输入另一个数')) c=a/b return c except ZeroDivisionError: print('除数不能为0') finally:print('12131111111111') #(return在finally之后执行) print('程序终止') r=appa() print(r) 4.
字段/属性名称 | 使用格式 | 描述 |
---|---|---|
asctime | %(asctime)s | 日志事件发生的时间--人类可读时间,如:2003-07-08 16:49:45,896 |
created | %(created)f | 日志事件发生的时间--时间戳,就是当时调用time.time()函数返回的值 |
relativeCreated | %(relativeCreated)d | 日志事件发生的时间相对于logging模块加载时间的相对毫秒数(目前还不知道干嘛用的) |
msecs | %(msecs)d | 日志事件发生事件的毫秒部分 |
levelname | %(levelname)s | 该日志记录的文字形式的日志级别('DEBUG', 'INFO', 'WARNING', 'ERROR', 'CRITICAL') |
levelno | %(levelno)s | 该日志记录的数字形式的日志级别(10, 20, 30, 40, 50) |
name | %(name)s | 所使用的日志器名称,默认是'root',因为默认使用的是 rootLogger |
message | %(message)s | 日志记录的文本内容,通过 msg % args 计算得到的 |
pathname | %(pathname)s | 调用日志记录函数的源码文件的全路径 |
filename | %(filename)s | pathname的文件名部分,包含文件后缀 |
module | %(module)s | filename的名称部分,不包含后缀 |
lineno | %(lineno)d | 调用日志记录函数的源代码所在的行号 |
funcName | %(funcName)s | 调用日志记录函数的函数名 |
process | %(process)d | 进程ID |
processName | %(processName)s | 进程名称,Python 3.1新增 |
thread | %(thread)d | 线程ID |
threadName | %(thread)s | 线程名称 |
5.冒泡排序
list1=[9,7,8,6,4,5,2,3,12]
for i in range(len(list1)-1):
for a in range(len(list1)-1-i):
if list1[a]>list1[j+1]:
list1[j],list1[j+1]=list1[j+1],list1[j]
print(lisr1)
6.希尔排序
list=[9,7,8,6,4,5,2,3,12]
n=len(list)
h=n//2+1
while h>=1:
for i in range(h,n):
j=i
while j>=h and list[j]<list[j-h]
list[j],list[j-h]=list[j-h],list[j]
j-=h
h=h//2
print(list)