python模块的样式终端输出,移动和定位光标。
py-term的Python项目详细描述
python模块来设置终端输出的样式,移动和定位 光标。
python 2和3兼容
alt文本
安装
通过pip安装。
$ pip install py-term
或从来源获取
$ git clone https://github.com/gravmatt/py-term.git $ cd py-term $ python setup.py install
导入模块
将模块导入到python项目中。
import term
用法
term.write('Hello, ') term.write('Python!') > Hello, Python! term.writeLine('Hello') term.writeLine('Python!') > Hello > Python!
样式输出
第一个参数是文本输出,以下所有参数是 用于造型。
term.writeLine(text, *style) Or text = term.format(text, *style) term.writeLine(text)
使用量
term.writeLine('Hello, Python!') term.writeLine('This text line will be green', term.green) term.writeLine('Reverse the green color', term.green, term.reverse)
或
ouput = term.format('Hello, ', term.green) + term.format('Python!', term.blue, term.bold) term.writeLine(output) term.write(term.format('All in one line', term.reverse))
文本对齐
居中对齐
# term.center(text) term.writeLine(term.center('Super Python!'))
右对齐
# term.right(text) term.writeLine(term.right('Rene Tanczos (@gravmatt)'))
样式属性
Code | Description |
---|---|
term.off | All attributes off |
term.bold | Bold |
term.dim | Dim |
term.underscore | Underscore (monochrome display only) |
term.blink | Blink |
term.reverse | Reverse |
term.hide | Hide |
文本颜色
Code | Color |
---|---|
term.black | Black |
term.red | Red |
term.green | Green |
term.yellow | Yellow |
term.blue | Blue |
term.magenta | Magenta |
term.cyan | Cyan |
term.white | White |
背景色
Code | Color |
---|---|
term.bgblack | Black |
term.bgred | Red |
term.bggreen | Green |
term.bgyellow | Yellow |
term.bgblue | Blue |
term.bgMagenta | Magenta |
term.bgcyan | Cyan |
term.bgwhite | White |
删除样式属性
删除样式字符。
(在数一数字符串之前打电话很好)
term.strip(formatted_text) hello = term.red + 'hello, world' + term.off print hello # '\x1b[31mhello, world\x1b[0m\x1b[27m' print term.strip(hello) # hello, world
突出显示文本
无格式文本字符串的简单突出显示
def callback(matching_text): return term.blue + matching_text + term.off output, match_count, array_of_positions = term.highlight(regex_pattern, text, callback)
返回元组。
输出(索引0)=格式化文本输出
match_count(index 1)=模式的匹配计数
array_of_positions(index 2)=带start和stop的元组数组 匹配点[(4,6),(9,11),…]
设置标题
term.setTitle('Hello Terminal') # or clear it term.clearTitle()
设置选项卡名称
term.setTab('Hello Tab') # or clear it term.clearTab()
光标位置
将光标移动到特定位置。
term.pos(line, column) term.pos(2, 15)
获取终端的大小(行和列)
(30, 100) = term.getSize() # (lines, colums) = term.getSize()
将光标移到起始位置(1,1)。
term.homePos()
将当前光标位置向上、向下、向左或向右移动 指定值。
term.up(value=1) term.down(value=1) term.left(value=1) term.right(value=1)
保存当前光标位置。
term.saveCursor()
恢复先前存储的光标位置。
term.restoreCursor()
清除终端屏幕。
term.clear()
清除当前光标位置上的整行。
term.clearLine()
清除从当前光标位置到结尾的行。
term.clearLineFromPos()
清除从开始到当前光标位置的行。
term.clearLineToPos()
许可证
麻省理工学院许可证(MIT)
版权所有(c)2015-2016 Renétanczos
特此免费向任何获得 本软件和相关文档文件的副本 “软件”),无限制地处理软件,包括 但不限于使用、复制、修改、合并、发布, 分发、再授权和/或出售软件副本,以及 允许向其提供软件的人员这样做,但须遵守 以下条件:
上述版权公告及本许可公告须包括在内 在软件的所有副本或大部分中。
软件按“原样”提供,不作任何形式的保证 或默示的,包括但不限于 适销性、适合特定目的和不侵权。 在任何情况下,作者或版权持有人均不对任何 索赔、损害赔偿或其他责任,无论是在合同诉讼中, 侵权行为或其他,由 软件或软件中的使用或其他交易。