Python输出py文件模拟代码高亮
来源:互联网 发布:瑞星数据恢复 编辑:程序博客网 时间:2024/09/21 08:15
此程序十分简单,模拟的过程中简易的处理了Py语法对应的高亮,并输出行号。代码如下:
#! /usr/bin/env python# coding:utf-8# **************************************# Function: python 打开Py文件高亮显示# Version: 1.0# Author: 'beginman'# **************************************# py colorama:https://pypi.python.org/pypi/coloramaimport osimport randomfrom colorama import *init(autoreset=True)COLOR = [Fore.RED, Fore.GREEN, Fore.BLUE, Fore.BLACK, Fore.YELLOW, Fore.MAGENTA, Fore.CYAN, Fore.WHITE, Fore.RESET]BACK = Back.GREEN # 行号Syna = { 'def': Fore.RED+Style.BRIGHT, 'class': Fore.GREEN+Style.BRIGHT, '"""': Fore.YELLOW+Style.BRIGHT, "'''": Fore.YELLOW+Style.BRIGHT, 'import': Fore.YELLOW, 'from': Fore.YELLOW, 'for': Fore.MAGENTA+Style.BRIGHT, 'elif': Fore.MAGENTA+Style.BRIGHT, 'else': Fore.MAGENTA+Style.BRIGHT, 'print': Fore.CYAN, '#': Fore.GREEN }def PrintFile(path): """Print file""" f = open(path) count = 1 for line in f.readlines(): sy_list = [i for i in Syna.items()] RANDOM_COLOR = [s[1] for s in sy_list if line.strip().startswith(s[0])] RANDOM_COLOR = RANDOM_COLOR[0] if RANDOM_COLOR else random.choice(COLOR) n = u'☺ %s ' % count if count<10 else u'☺ %s ' % count linenum = Style.NORMAL+BACK + n count += 1 print linenum,RANDOM_COLOR + line.strip()def GetPath(): """choice file""" while True: file = raw_input(u'请输入指定文件:') if os.path.isfile(file): break return filedef main(): PrintFile(GetPath())if __name__ == '__main__': main()
效果如下:
0 0
- Python输出py文件模拟代码高亮
- 在python代码中导入自己写的.py文件
- python __init__.py文件
- Python 调用py文件
- python的setup.py文件
- python的setup.py文件
- python shell 运行.py文件
- python之_init_.py文件
- python .py文件执行方式
- python 脚本 .py文件执行
- Python(2) import .py文件
- Python的__init__.py 文件
- python 模拟鼠标点击自动下载文件然后输出文件名
- [Python]py文件转为exe文件
- python py文件转换成pyc文件
- Python 代码覆盖率统计工具 coverage.py
- python中BaseHTTPServer.py代码阅读分析
- Python代码覆盖工具coverage.py介绍
- 两人斗地主客户端源码(二)
- 环境变量究竟是什么?
- ios本地化大全
- POI操作Excel常用方法总结
- Cocos2d-x2.0 -- 从点,线,面学起
- Python输出py文件模拟代码高亮
- 【玩单反】什么是BKT按钮
- 笨笨熊交通篇--广度搜索
- ios安装文件ipa下载及bundle-identifier获取
- css与html的三种结合方式
- 多项式求和求积(链表)
- 生活的反思
- PB程序优化
- 调整音频模型以实现更好的语音识别