首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python 学习手册
Python Cookbook
Python 基础教程
Python Sites
PyPI - Python Package Index
http://www.simple-is-better.com/
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
l4ever
V2EX  ›  Python

vscode 坑死我了.

  •  
  •   l4ever · 106 天前 · 5466 次点击
    这是一个创建于 106 天前的主题,其中的信息可能已经有所发展或是发生改变。
    事情是这样的, 最近要个转 base64 的功能, 国庆假期下班前我想,
    小 case. import base64
    再二进制读图片,转换即可.....
    说干就干我调试了半天. 输出的结果始终不对,
    用<img src="">引用 base64 转换之后的图片要么是破图,要么只显示一部分..
    今天想起这个事情又开始继续折腾, 我发现小图正常, 大图不行.....




    直到中午我才发现, vscode 终端输出的字符太多就直接不显示了
    而我每次都是从终端里面复制的转换结果......
    29 回复  |  直到 2019-10-10 11:10:48 +08:00
    pkookp8
        1
    pkookp8   106 天前 via Android
    我一直很不相信手动操作的结果,特别是复制粘贴
    自然语言还好
    机器的语言少一些特殊不可见字符意思完全不一样
    LokiSharp
        2
    LokiSharp   106 天前
    Windows 的终端是这样的啊
    Keanuo
        3
    Keanuo   106 天前
    一开始也是直接终端里粘
    后来觉得麻烦就直接 fs.writeFileSync()了
    Qcui
        4
    Qcui   106 天前
    控制台超长时好像会显示不全的,不仅是 vs code 吧
    arrow8899
        5
    arrow8899   106 天前
    pycharm 不会
    mnssbe
        6
    mnssbe   106 天前
    这个应该是你自己的问题
    reus
        7
    reus   106 天前
    我就没遇到这种终端,垃圾 vscode。
    Kobayashi
        8
    Kobayashi   106 天前 via Android
    和 vscode 无关,也和终端无关。终端没有输出长度限制,不然根目录下 tree / 早就停止输出了。是管道有缓存大小限制。https://stackoverflow.com/questions/38583627/is-there-a-character-limit-of-the-output

    参考上面第一条评论(非第一条答案)
    zjyl1994
        9
    zjyl1994   106 天前   ♥ 1
    呃呃呃,为什么不写到文件啊老哥?
    sai233
        10
    sai233   106 天前
    对,vscode 垃圾!
    k9982874
        11
    k9982874   106 天前 via iPhone   ♥ 2
    base64 不是==结束,不是就应该意识到不对了吗?
    jinliming2
        12
    jinliming2   106 天前 via iPhone   ♥ 1
    @k9982874 也不是所有 base64 都是双等号结束啊……有单等号的,也有没等号的,看原始数据长度定的啊……
    而且等号可以省略的啊……
    collery
        13
    collery   106 天前
    @k9982874
    @jinliming2 大兄弟说的对
    zachlhb
        14
    zachlhb   106 天前 via Android
    vscode 终端内容超长会显示成链接的,要点击才会显示完整内容
    fairytale
        15
    fairytale   106 天前 via iPhone
    vscode 终端内容超长会折叠后显示成链接的,要点击才会显示完整内容+1
    Pastsong
        16
    Pastsong   106 天前   ♥ 2
    >> file.txt
    cookey39
        17
    cookey39   106 天前 via Android
    vs code....只用它看代码
    LiuJiang
        18
    LiuJiang   106 天前
    大兄弟别用 vscode 了,真的。
    ClericPy
        19
    ClericPy   106 天前
    这是常识性的东西吧, 我在 Windows 上做压测, 用 code runner 每次到 1600 多行必定停止, 报错都不显示, 所以就查了那个最大长度问题, 如果速度慢点, 几万行都不会停止
    话说这都什么坏习惯(虽然我 Sublime REPL 的时候经常干), 复制东西这种事一般不都重定向个文件用完删或者直接剪切板赋值么... pyperclip.copy
    一行代码的事
    k9982874
        20
    k9982874   106 天前 via iPhone
    @collery @jinliming2 请先尝试用 python 的 base64 库做个未经人为修改的不带==或=结束的 base64

    说这么严谨总找不到杠点了吧?
    xy90321
        21
    xy90321   106 天前 via iPhone
    vscode:我被帖主坑死了
    misaka19000
        22
    misaka19000   106 天前
    应该是终端的 buffer 的原因
    hyserendipity
        23
    hyserendipity   106 天前 via iPhone
    vscode 只用来阅读代码,ide 还是 jetbrains 好用
    zeyexe
        24
    zeyexe   106 天前
    一般认为从终端复制的字符串不是可靠的数据。因为有一定可能出现少字符、多字符、不可见字符等问题。
    evam
        25
    evam   105 天前
    jetbrains: 现在想起我的好了?
    ngc3242
        26
    ngc3242   105 天前
    @k9982874 =在 base64 是做 padding 的,一般源字符串长度是 3 的倍数的时候不需要 padding,就没有=了
    ngc3242
        27
    ngc3242   105 天前
    严谨一点应该说是源二进制串字节数是 3 的倍数
    doyok
        28
    doyok   105 天前
    安利个,偶尔使用的话,可以在这个地址里转换,http://www.pjhome.net/web/html5/encodeDataUrl.htm
    MonoLogueChi
        29
    MonoLogueChi   105 天前 via Android
    @k9982874 编码字节数不能被 3 整除的时候才需要补 0,=表示补 0 的字节数
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   751 人在线   最高记录 5168   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 26ms · UTC 22:43 · PVG 06:43 · LAX 14:43 · JFK 17:43
    ♥ Do have faith in what you're doing.