终端彩色渲染“大神”,一眼,即达——一方小图
终端彩色渲染“大神”一眼即达。——一方小图小图图中内容是我对sgr体系的近五年“钻研”有幸得道——挣脱传统染缸着色文本的枷锁走进『终端渲染状态机指令序列构造设定』体系的广袤疆域……样例tree.pypython#!/usr/bin/env python3import os__author__ 梦幻精灵_cq__version__ 2.0 # 终结版__finaledit_time__ 2026-10-28 23:24color lambda c90: f\x1b[{c}m # 终端color渲染状态机设定指令序列语法灌装器定义。# 〖脚本缘起说明_tree函数框架为ai伙伴儿“智普清言”搭建因为我对闭包递归机制熟悉限制清楚**1、调用“自己”——递归标识2、循环调用终止条件——边界3、数据流转——压栈/出栈。**但代码实现总是“混沌”所以沿用智普投喂示例源码虽然冗余和复沓但框架逻辑通泰。吾以己研判之认知大刀阔斧土木兴。〗 #def _tree(root: str, # 目录完备路径绝对路径——目录树的“根目录”prefix: str , # 打印前缀Root目录为空内调叠加传参) - None: 列指定目录树 dirs sorted(os.scandir(root), # 扫描指定目录keylambda _: (not _.is_dir(follow_symlinksFalse), # 第一排序逻辑以目录类型_.name # 第二排序逻辑以.name字典序) # 排序逻辑) # 新建有序目录listfor _ in dirs: # 遍历print(f{color()}{prefix} # 90色打印目录枝丫f{└─if dirs[-1] _else ├─}{color(36)}{_.name}{color(0)} # 36色打印.name后重置系统配色) # print()if _.is_dir():_tree(_.path,prefix │ # 目录递归调用叠加前缀传参即常规语法“prefix │ ”制表竖线加三个空格)def tree(root: str /sdcard/ # 目标根路径) - None: 全盘扫描Demo from os import get_terminal_sizewidth get_terminal_size().columns # 动态捕获当前终端列宽from time import timestart time()print(f\n{root})_tree(root) # 全目录树扫描print(f{\n*2}{color()}{f Root: {color(1)}{root}{color(0)}{color()} :-^{width 13}}f{\n*2}{color()}{f 用时{color(95)}{time() - start:.2f}{color()}秒 :^{width - 3 10}}f{\n*2}{color()}{:-^{width}}{color(0)})if __name__ __main__:root /sdcard/Documents/csdn/newblog/tree(root) # 定制调用首行打印根目录如同_tree()的装饰器函数。效果同Linux.tree指令tree指令其实首行也打印了根目录只不过是“.”——当前目录路径简写。_tree(root) # 内置函数调用首行不打印根目录。试炼一Qpython (python 3.10.13)试炼二termux python 3.13.10