在QMT中使用print可以打印出执行的日志,但是有时候执行程序时间长,打印的内容比较多,控制台中就要覆盖前面的内容,不能够完整的保留下来做分析,下面示例可以在print到控制台的同时记录到日志文件中。

#encoding:gbkimport pandas as pd
import numpy as np
import talib
import sys
import time#Logger类的定义
class Logger(object):def __init__(self,filename="Default.log"):self.terminal=sys.stdoutself.log=open(filename,"w",encoding="utf-8") #防止编码错误def write(self, message):self.terminal.write(message)self.log.write(message)def flush(self):pass#log初始化函数,在函数中初始化log对象
def loginit():t=time.strftime("-%Y%m%d-%H%M%S",time.localtime()) #时间戳filename='d:\stock\log\log'+t+'.txt'log=Logger(filename)sys.stdout=logdef init(ContextInfo):ContextInfo.stock_code_list=['000001.SZ']ContextInfo.accID='18510385'ContextInfo.set_universe(ContextInfo.stock_code_list)ContextInfo.set_account(ContextInfo.accID)loginit() #初始化log对象def handlebar(ContextInfo):timetag=ContextInfo.get_bar_timetag(ContextInfo.barpos)dt=timetag_to_datetime(timetag,'%Y-%m-%d %H:%M%S')print(dt,'-'*30)if ContextInfo.is_last_bar() or dt[:10]==ContextInfo.end[:10]:sys.stdout.log.close() #关闭文件sys.stdout=sys.stdout.terminal #恢复输出的控制台引用print('回测完成') #最后一句没有写到日志文件中

QMT中print内容同时输出到控制台和日志文件相关推荐

  1. Java知识积累——同时输出到控制台和指定文件,或直接输出到指定文件

    很多时候的实际需求都不允许我们只是把结果输出到console就可以了,那么怎么把程序运行结果输出到指定文件,以及怎么能同时让其输出到指定文件和console呢? 通过网上搜索过来人的文章,找到了如下解 ...

  2. 使用jspdf插件将网页中的内容导出为高保真的pdf文件

    文章目录 使用jspdf插件将网页中的内容导出为高保真的pdf文件 1. 将网页中的内容导出为pdf文件的四种方式比较 2. 第一种方式:html2canvas + jspdf 导出网页内容 2.1 ...

  3. linux 输出gc日志,Tomcat输出保存JVM GC日志文件

    当系统出现问题时,分析java虚拟机GC日志可以帮助我们定位问题,一般来说, 我们可以通过制定JVM参数使tomcat保存GC日志文件,具体实现如下: Windows下 找到tomcat的解压目录,进 ...

  4. log4j输出多个自定义日志文件、动态配置多个日志文件

    转:http://blog.sina.com.cn/s/blog_8417657f0101lskw.html log4j的强大功能无可置疑,但实际应用中免不了遇到某个功能需要输出独立的日志文件的情况, ...

  5. 记录-分模块输出到不同的日志文件

    文章目录 原因剖析 解决1 测试 解决二 测试 今天碰到一个业务场景: 之前做好了一个web系统,接到任务需要将一个独立的Java系统嵌入到web系统中,Java系统嵌入顺利完成,此时出现了一个问题由 ...

  6. java 某个类 单独输出日志_log4j实现特定功能的日志单独输出到指定的日志文件...

    如何实现按需要,使某个功能的日志单独输出到指定的日志文件呢? 其实只要在现有的log4j基础上稍加配置即可实现这一功能. 1.常用配置如下: #Level log4j.rootLogger = deb ...

  7. Nginx输出header到access日志文件

    Nginx输出header到access日志文件 背景 配置 nginx配置如下 http块配置如下 日志效果如下 背景 为了排查线上的bug,需要在nginx的日志中,打印客户端上传上来的heade ...

  8. python输出文本换行_python中print怎么不换行输出

    大家应该知道python中print之后是默认换行的, 那如何我们不想换行,且不想讲输出内容用一个print函数输出时,就需要改变print默认换行的属性, 方法如下:print('contents' ...

  9. 【Python】规范脚本Log输出,将log输出到控制台同时写入文件中

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.logging模块的引入 二.logging模块的使用 1.引入库 2.创建一个logger对象 3.将日志写入文 ...

最新文章

  1. 如何克服实施OKR的阻力?
  2. spider RPC更新至2.0.0-RELEASE
  3. hdu 2007题解
  4. C语言strncmp()函数(把 str1 和 str2 进行比较,最多比较前 n 个字节)
  5. 编译安卓的一些知识点
  6. from mysql partition select_爬虫(九十九)mysql详解二
  7. VUE3组合api的钩子函数生命周期
  8. objective-c(iOS5) 中weak和strong使用的区别
  9. 运行在MAMP Pro上的PhP和Mysql更改版本教程
  10. 产业互联网周报:博通610亿美元收购VMware;阿里云财报13年来首次年度盈利;华为:对所有供应商提出碳减排要求...
  11. 《善用佳软:高效能人士的软件应用之道》一第2章 办公软件:核心应用,实用技巧...
  12. word插入公式及编号右对齐
  13. [我叫以赏]Python获取B站UP主粉丝数
  14. 十二生肖的相合、相冲、相刑、相害
  15. Ant Design - Authorized
  16. 国税服务器反回文件错误,电子税务局常见问题解答电子税务局异常转办(一).pdf...
  17. 汉印HPRT HN-3208SR 驱动
  18. STM32cubemx——超声波测距
  19. 学生学籍管理系统~~登录界面(Java、SQL)
  20. Java 多文件夹合并

热门文章

  1. GTK+ and Glade3 GUI Programming Tutorial--中文系列
  2. QQ公众号接口使用要求
  3. php 获取qq头像,php获取QQ头像并显示的方法_PHP教程
  4. ES6 新增功能点整理
  5. 清理C盘--删除表情包缓存
  6. HTML的6中空格表示方式
  7. 2019年3月-4月前端面试题汇总(持续更新中...)
  8. 跨部门沟通有哪些坑?
  9. 梁静茹成都开唱花样多 坐小火车藏礼盒中
  10. Beyond Compare v4.3.3Crack,文本文档进行编辑和查看