Python之缓存刷新

有些童鞋写了python脚本在linux执行,发现pingt打印的内容并不是预想的一样直接输出,不能实时获取python脚本输出日志,而是在脚本执行完成后才输出,这是啥子原因呢?

其实这是python缓冲区的问题

在我们调用print后,并不是立即就打印的,一般会先将内容发送到缓冲区,然后再打印,如果缓冲区没满,不会打印,如果你想立即看到,就需要刷新缓冲区

主动调用刷新是最安全方式,对于耗时比较长的python脚本,可以实时获取日志信息

案例1

import sys
import timefor i in range(10):print(i)time.sleep(1)

该实验会每隔一秒打印一个数字,输出会自动的刷新缓存,因为print默认时以‘\n’结尾,遇到换行就会显示出来

案例2

import sys
import timefor i in range(10):print(i, end =' ')time.sleep(1)

该实验在前9秒不会打印数据,只会在第10秒的时候把之前的数据一并打印出来,因为用空格作为print的分隔符,不会触发缓存刷新

案例3

import sys
import timefor i in range(10):print(i, end =' ')sys.stdout.flush()time.sleep(1)

该输出就会每隔一秒打印一个数字,因为代码主动刷新了缓存

案例4

import sys
import timefor i in range(10):print(i, end =' ', flush = True)time.sleep(1)

当然了print本身也提供了flush参数,通过设置也可以主动刷新

案例5

可以在调用python脚本时,添加==-u==参数,会强制其标准输出也同业标准错误一样,不通过缓存直接打印到屏幕

小记录:在有的python版本中加不加-u参数好像都是一样的,不起作用,具体没搞太明白,不知道是否是版本存在问题

Python之缓存刷新相关推荐

  1. jsdelivr 缓存刷新

    前言 ​ 上一篇修改了黑幕,但是使用了jsdelivr加速的静态资源,所以照常更新下github上的资源,但是github上查看已经上传成功了,jsdelivr访问的依然是之前的资源,说白了就是缓存的 ...

  2. 集成Ehcache用来缓存表以后,怎么设置缓存刷新时间

    问答 集成Ehcache用来缓存表以后,怎么设置缓存刷新时间 发布于 217天前  作者 老司机  93 次浏览  复制  上一个帖子  下一个帖子  标签: 无 集成Ehcache用来缓存表以后,怎 ...

  3. cdn刷新api_缓存刷新与查询

    缓存刷新,是指将缓存过的客户资源在 CDN 节点内设置为过期状态:当用户再次发起访问时,节点回源站拉取所需资源,并重新缓存在节点上.具体做法是客户提交资源 url 到 CDN,由 CDN 来操作刷新. ...

  4. Chrome调试以及选择清除缓存刷新

    为什么这里要把两点合并到一个博客里面呢,因为调试这个问题可能对于开发人员来说,是非常容易的事情,我怕我容易忘记所以记下来,第二个刷新的点我也是在别人在我电脑操作时第一次见到直接清缓存硬核刷新的. 1. ...

  5. 分布式本地缓存刷新方案

    一.背景 最近公司做的一个需求中有个场景是关于分布式本地缓存刷新的.在跟领导和同事讨论技术方案的时候发现实现起来也不是很难,但是如何大规模使用或者结合不同框架中间件去实现也是有些挑战的,所以本篇文章就 ...

  6. cpu刷新缓存是什么意思_CPU缓存刷新谬误

    cpu刷新缓存是什么意思 即使来自经验丰富的技术人员,我也经常听到有关某些操作如何导致CPU缓存"刷新"的话题. 这似乎说明了关于CPU缓存如何工作以及缓存子系统如何与执行核心交互 ...

  7. Java 七牛缓存刷新

    由于七牛提供的文档不怎么好懂(有的功能根本在api中在不到答案),另外百度搜索的答案也不尽如意.折腾了两天,终于搞懂了通过调用七牛提供的API去刷新缓存!! 场景:APP中关于帮助说明原先都是写死的h ...

  8. fill splinter 延迟_学习python +splinter自动刷新抢票

    一年一度的春运又来了, 今年我自己写了个抢票脚本. python +splinter自动刷新抢票,可以成功抢到(依赖自己的网络环境太厉害,还有机器的好坏), 但是感觉不是很完美, 有大神请指导完善一下 ...

  9. python +splinter自动刷新抢票

    一年一度的春运又来了, 今年我自己写了个抢票脚本. python +splinter自动刷新抢票,可以成功抢到(依赖自己的网络环境太厉害,还有机器的好坏), 但是感觉不是很完美, 有大神请指导完善一下 ...

最新文章

  1. windows Server 2003   IIS启用父路径
  2. 《Dreamweaver CS6完美网页制作——基础、实例与技巧从入门到精通》——1.3 常用网页设计软件...
  3. android弹出输入框不影响布局,android 输入法弹出后,不影响activity原有布局
  4. lcd和服务器同时显示温度,51单片机LCD1602如何同时显示温度和时间
  5. FP error code老是忘记的看这里:只给出最常用的几个。
  6. 碎片脚本注解(后续整理)
  7. Django工具:Git简介与基本操作
  8. 「面试」美团肝了我30+问题
  9. 不同级别成员对应三种继承的结果:
  10. 电脑端音乐播放器html5,分享|5 个很酷的音乐播放器
  11. LAMP兄弟连打造免费视频教程
  12. 是不是胖了c语言程序,C语言:到底是不是太胖了
  13. cdn回源php_CDN回源、网站解析 是什么意思?
  14. uwp浏览器java源码_在UWP应用程序中打开UWP
  15. PS长图快速切片_PS拼图软件
  16. 使用ldapmodify修改条目
  17. lldb +debugserver调试环境部署
  18. 华中科技大学计算机复试答案,华中科技大学计算机复试题目
  19. acwing-Diango项目 (后半)
  20. 酷欧天气 java.lang.RuntimeException: Unable to start activity ComponentInfo,程序无法运行

热门文章

  1. oracle 动态声明变量_oracle存储过程动态sql变量赋值
  2. Ubuntu—自启服务搭建一个文件服务器
  3. 【Jailhouse 文章】Look Mum, no VM Exits
  4. 高通 8917/37 SecueBoot 调试
  5. 计算机初级考试ppt多少分?
  6. 【内网穿刺】内网穿刺使用体验
  7. HTML5响应式手机模板:电商网站设计——歪秀商城手机端开发静态页面HTML+CSS+JavaScript 手机模板wap 手机网站模板 企业手机网站模板
  8. GSL中的BLAS支持
  9. 怎么接受对方tp_Sorry该怎么回应?难道是You are welcome?
  10. 智融合·共未来丨智合同携手百融云创打造合同智能化应用服务平台