文章来源:
一、Python Shell 清屏方法
交互模式下使用Python很方便,如果想清除显示过的信息,有两种方法可以采用。
方法一、针对Python命令行
>>>import os
>>>n=os.system('cls')
- 1
- 2
os.system(‘cls’),调用DOS系统提供的cls命令,成功则返回0。
方法二、针对IDLE Shell
1、在Python X\Lib\idlelib目录下创建ClearWindow.py(其中X是Python版本号)
class ClearWindow: menudefs = [ ('options', [None, ('Clear Shell Window', '<<clear-window>>'), ]), ]
def __init__(self, editwin): self.editwin = editwin self.text = self.editwin.text self.text.bind("<<clear-window>>", self.clear_window2) self.text.bind("<<undo>>", self.undo_event) # add="+" doesn't work def undo_event(self, event): text = self.text text.mark_set("iomark2", "iomark") text.mark_set("insert2", "insert") self.editwin.undo.undo_event(event) # fix iomark and insert text.mark_set("iomark", "iomark2") text.mark_set("insert", "insert2") text.mark_unset("iomark2") text.mark_unset("insert2") def clear_window2(self, event): # Alternative method # work around the ModifiedUndoDelegator text = self.text text.undo_block_start() text.mark_set("iomark2", "iomark") text.mark_set("iomark", 1.0) text.delete(1.0, "iomark2 linestart") text.mark_set("iomark", "iomark2") text.mark_unset("iomark2") text.undo_block_stop() if self.text.compare('insert', '<', 'iomark'): self.text.mark_set('insert', 'end-1c') self.editwin.set_line_and_column() def clear_window(self, event): # remove undo delegator undo = self.editwin.undo self.editwin.per.removefilter(undo) # clear the window, but preserve current command self.text.delete(1.0, "iomark linestart") if self.text.compare('insert', '<', 'iomark'): self.text.mark_set('insert', 'end-1c') self.editwin.set_line_and_column() # restore undo delegator self.editwin.per.insertfilter(undo)
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
2、 在Python X\Lib\idlelib目录下编辑config-extensions.def(IDLE扩展配置文件)
在该文件最后增加如下内容:
[ClearWindow]
enable=1
enable_editor=0
enable_shell=1
[ClearWindow_cfgBindings]
clear-window=<Control-Key-w>
- 1
- 2
- 3
- 4
- 5
- 6
其中“w”可以根据自己喜好进行修改,必须是小写字母。
启动Python IDLE,在Options菜单下会出现"Clear Shell Window Ctrl+W"
执行一些Python语句:
按下组合键Ctrl+W,清除屏幕:
注意:文件名ClearWindow.py,类名ClearWindow,配置文件里两处ClearWindow,务必保持一致,包括大小写,否则无法启动IDLE。
</div>
<link href="https://csdnimg.cn/release/phoenix/mdeditor/markdown_views-b6c3c6d139.css" rel="stylesheet">
<div class="more-toolbox">
<div class="left-toolbox">
<ul class="toolbox-list">
<li class="tool-item tool-active is-like eye-protector-processed" style="transition: background-color 0.3s ease; background-color: rgb(193, 230, 198);"><a href="javascript:;"><svg class="icon" aria-hidden="true">
<use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#csdnc-thumbsup"></use>
</svg><span class="name">点赞</span>
<span class="count">3</span>
</a></li>
<li class="tool-item tool-active is-collection eye-protector-processed" style="transition: background-color 0.3s ease; background-color: rgb(193, 230, 198);"><a href="javascript:;" data-report-click="{"mod":"popu_824"}"><svg class="icon" aria-hidden="true">
<use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#icon-csdnc-Collection-G"></use>
</svg><span class="name">收藏</span></a></li>
<li class="tool-item tool-active is-share eye-protector-processed" style="transition: background-color 0.3s ease; background-color: rgb(193, 230, 198);"><a href="javascript:;" data-report-click="{"mod":"1582594662_002"}"><svg class="icon" aria-hidden="true">
<use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#icon-csdnc-fenxiang"></use>
</svg>分享</a></li>
<!--打赏开始-->
<!--打赏结束-->
<li class="tool-item tool-more">
<a>
<svg t="1575545411852" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5717" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M179.176 499.222m-113.245 0a113.245 113.245 0 1 0 226.49 0 113.245 113.245 0 1 0-226.49 0Z" p-id="5718"></path><path d="M509.684 499.222m-113.245 0a113.245 113.245 0 1 0 226.49 0 113.245 113.245 0 1 0-226.49 0Z" p-id="5719"></path><path d="M846.175 499.222m-113.245 0a113.245 113.245 0 1 0 226.49 0 113.245 113.245 0 1 0-226.49 0Z" p-id="5720"></path></svg>
</a>
<ul class="more-box eye-protector-processed" style="transition: background-color 0.3s ease; border-color: rgba(0, 0, 0, 0.34902); background-color: rgb(193, 230, 198);">
<li class="item"><a class="article-report">文章举报</a></li>
</ul>
</li>
</ul>
</div>
</div>
<div class="person-messagebox eye-protector-processed" style="border-top-color: rgba(0, 0, 0, 0.34902);">
<div class="left-message"><a href="https://blog.csdn.net/u013412772">
<img src="https://profile.csdnimg.cn/A/F/8/3_u013412772" class="avatar_pic" username="u013412772">
<img src="https://g.csdnimg.cn/static/user-reg-year/2x/6.png" class="user-years">
</a></div>
<div class="middle-message">
<div class="title"><span class="tit"><a href="https://blog.csdn.net/u013412772" data-report-click="{"mod":"popu_379"}" target="_blank">可乐丶</a></span>
</div>
<div class="text"><span>发布了125 篇原创文章</span> · <span>获赞 151</span> · <span>访问量 44万+</span></div>
</div>
<div class="right-message">
<a href="https://im.csdn.net/im/main.html?userName=u013412772" target="_blank" class="btn btn-sm btn-red-hollow bt-button personal-letter eye-protector-processed" style="transition: background-color 0.3s ease; background-color: rgb(193, 230, 198);">私信
</a>
<a class="btn btn-sm bt-button personal-watch" data-report-click="{"mod":"popu_379"}">关注</a>
</div>
</div>
</div>