Python从菜鸟到高手(2):清空Python控制台
admin
2023-07-20 15:02:26
0

  执行python命令会进入Python控制台。在Python控制台中可以用交互的方式执行Python语句。也就是执行一行Python语句,会立刻返回执行结果。

  当Python控制台输入过多的Python语句时,有时需要将这些已经输入的语句和执行结果清空,并重新开始输入Python语句。例如,下图就是一个输入了多条Python语句,并输出相应结果的Python控制台。

Python从菜鸟到高手(2):清空Python控制台

  当然,如果不想看到这些Python语句和输出结果,可以一直按“回车” 键,直到Python控制台中所有的内容都移到窗口上面为止。不过这样以来,光标还是在Python控制台的最下面,而且上面都是Python控制台的命令提示符,非常难看,如下图所示。

Python从菜鸟到高手(2):清空Python控制台

  如果读者用的是Mac OS X系统,在Python控制台中直接按Ctrl+L键就可以直接清空Python控制台。而在Windows中,是没有快捷键用来清空Python控制台的,所以需要我们编写Python代码来实现清空Python控制台的功能。因此,本节的目的到现在已经很清楚了,本节主要并不是教大家如何清空Python控制台,而是借用清空Python控制台这一操作,利用前面两节介绍的导入模块和声明变量的知识,编写一段Python程序,用来清空Python for Windows控制台。

  在Windows下,如果要清空Windows控制台,执行cls命令即可。由于Python控制台是利用Windows控制台实现的,所以cls命令也同样可以清空Python控制台。不过在Python控制台不能直接执行cls命令。在Python控制台要想执行外部命令,需要调用os模块中的system函数。读者可以一行一行在Python控制台输入下面的代码。

import os               # 导入os模块
os.system('cls')        # 执行cls命令清空Python控制台

  执行这两行代码,是把以前在Python控制台中输入的内容都清空了,但在Python控制台的第1行会输出一个“0”,如下图所示。

Python从菜鸟到高手(2):清空Python控制台

  其实这个“0”是os.system函数的返回值。Python控制台会输出每一条执行语句的返回值。os.system函数如果成功执行命令,返回“0”,如果执行命令失败,返回“1”。不过为了最求完美,现在就把这个“0”去掉。

  之所以会输出这个“0”,是因为Python语言的标准输出默认指向的是Python控制台,所以所有的Python语句执行的结果都输出到了Python控制台。现在只要改变Python语言的标准输出,让其指向一个文件,那么os.system函数的执行结果就会直接写到这个文件中,而不是Python控制台了。

  下面的例子会编写一个Python程序,用于清空Python控制台。
清空Python控制台不输出“0”的步骤如下:

(1)导入os模块和sys模块。

(2)使用open函数以可写的方式打开一个文件,本例是out.log。

(3)为了不影响在Python控制台输出其他语句的执行结果,应先将Python默认的标准输出保存到一个变量中,以便以后恢复默认的Python标准输出。使用sys.stdout可以获取Python标准输出的句柄(Handler)。

(4)将Python标准输出指向第2步打开的文件。

(5)使用os.system函数执行cls命令。

(6)恢复Python默认的标准输出。

  完整的实现代码如下。读者可以在Python控制台一行行输入这些代码,当执行到os.system(‘cls’)语句时,Python控制台被清空,不会再显示“0”。

import os                           # 导入os模块
import sys                          # 导入sys模块
f_handler=open('out.log', 'w')      # 打开out.log文件
oldstdout = sys.stdout              # 保存默认的Python标准输出
sys.stdout=f_handler                # 将Python标准输出指向out.log
os.system('cls')                    # 清空Python控制台       
sys.stdout = oldstdout              # 恢复Python默认的标准输出

《Python从菜鸟到高手》已经出版,购买送视频课程

《Python从菜鸟到高手》知识结构图。

Python从菜鸟到高手(2):清空Python控制台

扫描二维码关注“极客起源”公众号,技术文章、视频课程应有尽有

Python从菜鸟到高手(2):清空Python控制台

欢迎关注“Python开发者基地”公众号

Python从菜鸟到高手(2):清空Python控制台

相关内容

热门资讯

英内阁多名大臣要求英首相设定离... 据英国《泰晤士报》报道,英国内阁多名大臣将于当地时间今天(6月19日)下午告诉首相斯坦默,应为其离职...
视频丨2026端午档首日电影票... 据网络平台数据,截至目前,2026年端午档首日电影票房(含预售)突破1亿!2026年度电影总票房(含...
今天,是中国人的家国端午 农历五月初五端午如期而至有粽叶包裹的烟火祝福有龙舟竞渡的昂扬朝气这份节日情思更承载着中国人心系山河、...
端阳车荟 风华启幕——2026... 粽叶飘香,车韵飞扬。伴着端午小长假的浓浓节日氛围,6月18日,2026第十五届中原国际汽车展览会暨新...
端午节当天,河南省委书记冒雨赴... 澎湃新闻记者 蒋子文据微信公众号“河南日报”报道,2026年6月19日,端午节当天,河南省委书记刘宁...
学习新语·端午|总书记引屈原诗... 统筹:黄庆华 苏晓洲文案:郭洁宇设计:马发展新华社新媒体中心、湖南分社联合制作新华社出品
蔡正元发文感谢卢秀燕赴台北监狱... 海峡导报综合报道国民党前民代蔡正元因涉“三中案”遭判刑3年6月定谳,并于3月底发监执行。蔡正元脸书1...
特别报道丨GSMA斯寒:6G时... 文 | 胡嘉琦 ID | BMR2004 2026年6月10日,在由《中国经营报》社有限公司、北京大...
飞鸟的故事:当鸿蒙成为他们的逐... 在中国南部沿海,经常能看到这样一种生态:海边贫瘠的滩涂中,植物先长出深扎底下的支柱根,逐渐变成肥沃的...
智能测试桩太阳能款与锂电池款区... 一、产品介绍 智能测试桩根据供电方式主要分为太阳能供电款和锂电池供电款,两款设备核心监测、通信、预警...