V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
uti6770werty
V2EX  ›  Python

print 中英混合输出,格式字符长短对齐的问题,似乎很多人都是.format 定参数去逐个细调的,感觉写起来很直接,事后看回去做调整,就看上去就觉得代码不够优雅了,有轮子不?

  •  
  •   uti6770werty · 2021-03-01 18:05:35 +08:00 · 2276 次点击
    这是一个创建于 1368 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如:

    colmsg = f'[{colrProcessPoolName}][{colrYellow(str(countt))}|{colrBule(str(QueenSize))}][T{colrGreen(str(TYPE))}][{dbTimeStr()}] 下载 {CaseName} {AnalyFunc.colrRed("[数据库文件]")} 耗时: [{AnalyFunc.colrBule(str(round((time.clock() - startTime),2)))}] 秒 '
    

    这个只是挑了一句写得比较短的了....,那些颜色函数是另外写的

    写起来容易,事后几月修改,看起来就像梵文了,而且输出对齐效果还不好(就是大家众所周知的字符位中英对齐不同的问题了)
    还是问一句,可有好轮子?(主要还是想解决每个字段,中英统一对齐的问题)

    9 条回复    2021-03-02 00:30:28 +08:00
    guxingke
        1
    guxingke  
       2021-03-01 18:10:43 +08:00   ❤️ 1
    搞个中英文 2:1 的等宽字体?
    superrichman
        2
    superrichman  
       2021-03-01 18:15:36 +08:00 via iPhone
    弄个有中文等宽字体就好了
    capre
        3
    capre  
       2021-03-01 18:15:39 +08:00 via iPhone
    尝试用制表位
    est
        4
    est  
       2021-03-01 18:44:02 +08:00
    我感觉 LZ 这个例子就是 f-string 比老办法更难看的的案例。。。
    uti6770werty
        5
    uti6770werty  
    OP
       2021-03-01 19:39:40 +08:00
    @guxingke @superrichman 这个了解了一下,浅的理解是在 IDE 里调了会有效果,我没试过放到纯系统 CommandLine 的 Console 下看效果,但应该改字体不是好办法? 我不确定。。。

    @capre 用过,感觉制表符不太管用的,偶然一些还是对不齐的,而且\t 在 code 上来看已经不直观了,抽象加个 tab 宽度,最终效果还是一半靠猜想。

    @est 我自己看了也觉得难受。。。
    jeffreychiu95
        6
    jeffreychiu95  
       2021-03-01 21:31:30 +08:00   ❤️ 1
    jones2000
        7
    jones2000  
       2021-03-01 22:29:04 +08:00
    这个是干什么用的呀? 一般系统上线不都是写日志的嘛, 要打印屏幕干什么?
    uti6770werty
        8
    uti6770werty  
    OP
       2021-03-01 22:46:02 +08:00
    @jones2000 人肉眼神 Watch 之用

    谢谢 @jeffreychiu95 的解答~
    lxilu
        9
    lxilu  
       2021-03-02 00:30:28 +08:00 via iPhone
    转全角再输出。全角字母的原生用途
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1824 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 16:31 · PVG 00:31 · LAX 08:31 · JFK 11:31
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.