2016-12-22 10:50:12 chuan_yu_chuan 阅读数 468
  • Python基础

    Python 以其简洁、优雅、高效的特点,成为目前流行的4大主流开发语言之一,其应用广泛,易学易用,让很多人爱不释手。本套课程为初学者量身打造,是你入门 Python 的必修课程。这一部分内容涵盖了Python基础的知识点,包括Python的基础语法,比如变量,字符编码等,数据类型以及if else,for循环等流程控制语句,内容简单却十分关键,无论是数据类型还是控制语句都是在以后的Python学习无论方向都会反复大量应用的。 此课程特别适合之前完全无任何开发经验的小白白学习! Python除了是人工智能领域第一语言之外,其实还广泛的应用于WEB开发、云计算、金融分析、自动化运维、自动化测试、爬虫、大数据分析等领域,生态圈极为丰富和活跃。它强大的模块库大大的提高了开发者的开发效率,简洁明朗的语法使写代码如写诗一样优雅顺畅,极大降低了编程的学习门槛。可以不谦虚的说,Python是唯一一门无论是开发老司机还是小白白都一致称赞的编程语言。 不论你是什么背景出身,如果对编程感兴趣,从Python入手吧,Python是检测你是否适合做程序员的好的语言,如果练Python都学不会,哈哈,那你可以放弃这个职业啦!

    14312 人正在学习 去看看 李杰

今天在使用PythonGUI时,被清屏所困扰,查阅网上资源发现一个比较简单的方式。
在python34/Lib/idellib中加入ClearWindow.py。可以到http://bugs.python.org/file14303/ClearWindow.py下载,或者复制以下代码另存为 ClearWindows.py

# IDLEX EXTENSION
##    """
##    Copyright(C) 2011-2012 The Board of Trustees of the University of Illinois.
##    All rights reserved.
##
##    Developed by:   Roger D. Serwy
##                    University of Illinois
##
##    Permission is hereby granted, free of charge, to any person obtaining
##    a copy of this software and associated documentation files (the
##    "Software"), to deal with the Software without restriction, including
##    without limitation the rights to use, copy, modify, merge, publish,
##    distribute, sublicense, and/or sell copies of the Software, and to
##    permit persons to whom the Software is furnished to do so, subject to
##    the following conditions:
##
##    + Redistributions of source code must retain the above copyright
##      notice, this list of conditions and the following disclaimers.
##    + Redistributions in binary form must reproduce the above copyright
##      notice, this list of conditions and the following disclaimers in the
##      documentation and/or other materials provided with the distribution.
##    + Neither the names of Roger D. Serwy, the University of Illinois, nor
##      the names of its contributors may be used to endorse or promote
##      products derived from this Software without specific prior written
##      permission.
##
##    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
##    OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
##    MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
##    IN NO EVENT SHALL THE CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR
##    ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
##    CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH
##    THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE SOFTWARE.
##
##
##
##
##    Clear Window Extension
##
##    About:
##
##        It provides "Clear Shell Window" under "Options"
##        with ability to undo.
##
##    Part of Issue 6143
##
##    """

config_extension_def = """
[ClearWindow]
enable=1
enable_editor=0
enable_shell=1
[ClearWindow_cfgBindings]
clear-window=<Control-Key-l>
"""


jn = lambda x,y: '%i.%i' % (x,y)        # join integers to text coordinates
sp = lambda x: tuple(map(int, x.split('.')))   # convert tkinter Text coordinate to a line and column tuple

import sys
import re
from idlelib.UndoDelegator import DeleteCommand

ansi_re = re.compile(r'\x01?\x1b\[(.*?)m\x02?')
def strip_ansi(s):
    return ansi_re.sub("", s)

class ClearWindow:
    menudefs = [
        ('options', [
               ('Clear Shell Window', '<<clear-window>>'),
       ]),]

    def __init__(self, editwin):
        self.editwin = editwin
        self.text = self.editwin.text
        self.text.bind("<<clear-window>>", self.clear_window)

    def clear_window_event(self, ev=None):
        self.clear_window(ev)
        return "break"

    def clear_window(self, event):

        per = self.editwin.per
        text = per.bottom

        iomark_orig = text.index('iomark')
        line_io, col_io = sp(iomark_orig)

        # if cursor is at the prompt, preserve the prompt (multiline)
        prompt = strip_ansi(sys.ps1)
        backlines = prompt.count('\n')
        prompt_start = jn(line_io-backlines, 0)
        maybe_prompt = text.get(prompt_start, prompt_start + '+%ic' % len(prompt))
        at_prompt = maybe_prompt == prompt

        if at_prompt:
            endpos = text.index(prompt_start)
        else:
            endpos = text.index('iomark linestart')

        dump = text.dump('1.0', endpos, all=True)

        # Add a command to the undo delegator
        undo = self.editwin.undo
        if undo:
            dc = ClearWindowDeleteCommand('1.0', endpos, dump)
            undo.addcmd(dc)

        text.edit_reset() # clear out Tkinter's undo history


class ClearWindowDeleteCommand(DeleteCommand):
    def __init__(self, index1, index2, dump):
        DeleteCommand.__init__(self, index1, index2)
        self.dump = dump

    def do(self, text):
        text.delete(self.index1, self.index2)
        text.see('insert')

    def redo(self, text):
        text.delete(self.index1, self.index2)
        text.see('insert')

    def undo(self, text):
        # inspired by "Serializing a text widget" at http://wiki.tcl.tk/9167
        dump = self.dump
        tag = {} # remember the index where a tag was activated
        for key, value, index in dump:
            if key == 'text':
                text.insert(index, value, '')
            elif key == 'tagon':
                tag[value] = index
            elif key == 'tagoff':
                text.tag_add(value, tag[value], index)
                del tag[value]
        # extend existing tags to the end position
        for value in tag:
            text.tag_add(value, tag[value], self.index2)
        text.see('insert')

然后修改config-extensions.def,在末尾添加

[ClearWindow]
enable=1
enable_editor=0
enable_shell=1
[ClearWindow_cfgBindings]
clear-window=<Control-Key-l>

这样一来就可以通过快捷键Ctrl+L来进行清屏了。
网上有一款集成了很多插件的GUI叫 IdleX,将其解压之后放在 Python34/Lib/idlex-1.13,通过python idlex.py可以直接运行,有兴趣的同学可以试试。官网 http://idlex.sourceforge.net
或者大家有更好的方法可以留言一起交流学习。

2017-05-12 18:02:08 huoxingrenhdh 阅读数 252
  • Python基础

    Python 以其简洁、优雅、高效的特点,成为目前流行的4大主流开发语言之一,其应用广泛,易学易用,让很多人爱不释手。本套课程为初学者量身打造,是你入门 Python 的必修课程。这一部分内容涵盖了Python基础的知识点,包括Python的基础语法,比如变量,字符编码等,数据类型以及if else,for循环等流程控制语句,内容简单却十分关键,无论是数据类型还是控制语句都是在以后的Python学习无论方向都会反复大量应用的。 此课程特别适合之前完全无任何开发经验的小白白学习! Python除了是人工智能领域第一语言之外,其实还广泛的应用于WEB开发、云计算、金融分析、自动化运维、自动化测试、爬虫、大数据分析等领域,生态圈极为丰富和活跃。它强大的模块库大大的提高了开发者的开发效率,简洁明朗的语法使写代码如写诗一样优雅顺畅,极大降低了编程的学习门槛。可以不谦虚的说,Python是唯一一门无论是开发老司机还是小白白都一致称赞的编程语言。 不论你是什么背景出身,如果对编程感兴趣,从Python入手吧,Python是检测你是否适合做程序员的好的语言,如果练Python都学不会,哈哈,那你可以放弃这个职业啦!

    14312 人正在学习 去看看 李杰

1.首先启动Python 有两个方法:

一:cmd

import os
os.system("cls") #windows
os.system("clear")#linux
二:IDLE

I.下载:链接:http://pan.baidu.com/s/1c2w3EJu 密码:z1mx

II.将ClearWindow.py放在Python X\Lib\idlelib目录下(X为你的python版本)

   在这个目录下将config-extensions.def复制替换掉原来的config-extensions.def文件
III.IDLE直接快捷键ctrl +l 

2019-04-30 18:25:17 Three_dog 阅读数 1128
  • Python基础

    Python 以其简洁、优雅、高效的特点,成为目前流行的4大主流开发语言之一,其应用广泛,易学易用,让很多人爱不释手。本套课程为初学者量身打造,是你入门 Python 的必修课程。这一部分内容涵盖了Python基础的知识点,包括Python的基础语法,比如变量,字符编码等,数据类型以及if else,for循环等流程控制语句,内容简单却十分关键,无论是数据类型还是控制语句都是在以后的Python学习无论方向都会反复大量应用的。 此课程特别适合之前完全无任何开发经验的小白白学习! Python除了是人工智能领域第一语言之外,其实还广泛的应用于WEB开发、云计算、金融分析、自动化运维、自动化测试、爬虫、大数据分析等领域,生态圈极为丰富和活跃。它强大的模块库大大的提高了开发者的开发效率,简洁明朗的语法使写代码如写诗一样优雅顺畅,极大降低了编程的学习门槛。可以不谦虚的说,Python是唯一一门无论是开发老司机还是小白白都一致称赞的编程语言。 不论你是什么背景出身,如果对编程感兴趣,从Python入手吧,Python是检测你是否适合做程序员的好的语言,如果练Python都学不会,哈哈,那你可以放弃这个职业啦!

    14312 人正在学习 去看看 李杰

Python实现控制台清屏

网上的资料清一色的os.system()调用,这种方法可以实现,但是有两个比较致命的缺点:
1、Linux下和Windows平台下命令有异:cls和clear并不一样。
2、system调用底层的实现是阻塞的系统调用执行外部命令,相当于是先后调用了fork, exec,waitpid来执行外部命令。这样清屏一个简单的功能,如此大费周章实在是太不合理了。

解决方案

非常简单:

print('\033c',end='')

如果有同学用C语言实现过一些改变控制台字符颜色等功能的小程序就会知道,\33开头这样的控制码可以修改很多控制台的输出属性,上面的\033c其实就是清屏指令。

需要注意此函数调用效果命令和Linux下的clear有些不同。 clear相当于整个屏幕上移,而输出\033c,或直接把屏幕的内容清空,之前输出的内容也会全部消失不见。

2017-09-11 14:47:25 u011341352 阅读数 681
  • Python基础

    Python 以其简洁、优雅、高效的特点,成为目前流行的4大主流开发语言之一,其应用广泛,易学易用,让很多人爱不释手。本套课程为初学者量身打造,是你入门 Python 的必修课程。这一部分内容涵盖了Python基础的知识点,包括Python的基础语法,比如变量,字符编码等,数据类型以及if else,for循环等流程控制语句,内容简单却十分关键,无论是数据类型还是控制语句都是在以后的Python学习无论方向都会反复大量应用的。 此课程特别适合之前完全无任何开发经验的小白白学习! Python除了是人工智能领域第一语言之外,其实还广泛的应用于WEB开发、云计算、金融分析、自动化运维、自动化测试、爬虫、大数据分析等领域,生态圈极为丰富和活跃。它强大的模块库大大的提高了开发者的开发效率,简洁明朗的语法使写代码如写诗一样优雅顺畅,极大降低了编程的学习门槛。可以不谦虚的说,Python是唯一一门无论是开发老司机还是小白白都一致称赞的编程语言。 不论你是什么背景出身,如果对编程感兴趣,从Python入手吧,Python是检测你是否适合做程序员的好的语言,如果练Python都学不会,哈哈,那你可以放弃这个职业啦!

    14312 人正在学习 去看看 李杰
在win环境下的cmd命令行python交互时,经常要清屏。而cmd命令行的清屏命令是'cls',则可用python的os模块调用封装未一个函数来清屏:
>>>import os
>>>def cls():
>>>...os.system('cls')
>>>cls()				#调用清屏

扩展各系统的清屏命令:
mac os x terminal清屏快捷键
cammand+k
linux系统清屏快捷键
ctrl+l
windows 命令行清屏命令
cls

2013-11-22 20:20:27 whaoXYSH 阅读数 1037
  • Python基础

    Python 以其简洁、优雅、高效的特点,成为目前流行的4大主流开发语言之一,其应用广泛,易学易用,让很多人爱不释手。本套课程为初学者量身打造,是你入门 Python 的必修课程。这一部分内容涵盖了Python基础的知识点,包括Python的基础语法,比如变量,字符编码等,数据类型以及if else,for循环等流程控制语句,内容简单却十分关键,无论是数据类型还是控制语句都是在以后的Python学习无论方向都会反复大量应用的。 此课程特别适合之前完全无任何开发经验的小白白学习! Python除了是人工智能领域第一语言之外,其实还广泛的应用于WEB开发、云计算、金融分析、自动化运维、自动化测试、爬虫、大数据分析等领域,生态圈极为丰富和活跃。它强大的模块库大大的提高了开发者的开发效率,简洁明朗的语法使写代码如写诗一样优雅顺畅,极大降低了编程的学习门槛。可以不谦虚的说,Python是唯一一门无论是开发老司机还是小白白都一致称赞的编程语言。 不论你是什么背景出身,如果对编程感兴趣,从Python入手吧,Python是检测你是否适合做程序员的好的语言,如果练Python都学不会,哈哈,那你可以放弃这个职业啦!

    14312 人正在学习 去看看 李杰

启动Python有两种方式,分别为“Windows命令行窗口”和“IDLE”

“命令行窗口”下可以通过如下两种方法:
1. import subprocess 
   subprocess.call("clear") # linux/mac 
   subprocess.call("cls", shell=True) # windows
执行完次命令后,窗口顶部第一行会出现一个0,接下来才会是输入提示符“>>>”
消除这个0的方法是在此命令前添加一个变量,例如 i=subprocess.call("cls", shell=True)
2. import os
   os.system("cls") # windows
   os.system("clear") # linux
执行完次命令后,窗口顶部第一行也会出现一个0,接下来才会是输入提示符“>>>”
消除这个0的方法同方法1
“IDLE”下以上两种方式都不起作用,可以通过建立如下函数实现:
def cls():
print "\n"*80
此函数将命令行往下移动80行,数字80可以自己任意设定

python交互模式下清屏

阅读数 21373

没有更多推荐了,返回首页