python将控制台输出保存到文件

Python015

python将控制台输出保存到文件,第1张

在平时工作中,有时我们需要将控制台输出保存到文件

缺点:只能保存到文件,但控制台无输出

将控制台输出的同时即时保存到文件

print 函数中的 file 参数, file=f ,输出到文件; file=sys.stdout ,输出到终端; flush=True ,即时刷新

没有输出INFO的日志级别。默认是WARN级别的日志,这里没有输出WARN说明没有设置成功。

这时可以正常输出INFO了

此时第二个logger也被设置了INFO级别了,查看源码:

可以看到名字为None时返回的是一个root对象,这也是为什么第二个logger也被修改的原因。

常见的输出到控制台和文件

默认只是输出了message,这样子还不如直接用print()函数了。所以还需要格式化一下:

设置格式化要用到logging.Handler

输出效果:

[图片上传失败...(image-6690c5-1606835078864)]

formatter参数

python导出数据到excel文件的方法:

1、调用Workbook()对象中的add_sheet()方法

1

2

wb = xlwt.Workbook()

ws = wb.add_sheet('A Test Sheet')

2、通过add_sheet()方法中的write()函数将数据写入到excel中,然后使用save()函数保存excel文件

1

2

3

4

5

6

7

ws.write(0, 0, 1234.56, style0)

ws.write(1, 0, datetime.now(), style1)

ws.write(2, 0, 1)

ws.write(2, 1, 1)

ws.write(2, 2, xlwt.Formula("A3+B3"))

wb.save('example.xls')

完整代码如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

import xlwtfrom datetime import datetime

style0 = xlwt.easyxf('font: name Times New Roman, color-index red, bold on',num_format_str='#,##0.00')

style1 = xlwt.easyxf(num_format_str='D-MMM-YY')

wb = xlwt.Workbook()

ws = wb.add_sheet('A Test Sheet')

ws.write(0, 0, 1234.56, style0)

ws.write(1, 0, datetime.now(), style1)

ws.write(2, 0, 1)

ws.write(2, 1, 1)

ws.write(2, 2, xlwt.Formula("A3+B3"))

wb.save('example.xls')

程序执行结果如下:

更多Python知识,请关注:Python自学网!!

(推荐操作系统:windows7系统、Python 3.9.1,DELL G3电脑。)