Python打印彩色字符

见惯了在黑色终端内输出白色字符,为使输出更有辨识度,我们编写的Python程序如何在终端打印出彩色字符呢?特别是出错的时候,红色字符让用户一下就关注到错误消息,像pip在下载安装库的时候,出错都是大段的红色字符。搜索这个问题的时候,不少教程都是介绍Linux终端打印彩色字符,提及Windows终端如何打印彩色字符的较少,这将是本文重点。

阅读全文

Linux Cygwin知识库:图形技术栈

本文共约3000字,预计阅读时间10分钟,本文同步发布于知乎专栏微信公众号平台。
关注学习了解更多的Cygwin、Linux、Python技术。
应评论区要求,本文对Cygwin系列(十二):了解X做更深入介绍。

阅读全文

Cygwin系列(十三):折腾X

本文共2000余字,预计阅读时间8分钟,本文同步发布于知乎专栏微信公众号平台。
关注学习了解更多的Cygwin、Linux技术。

本篇因各种各样的事情拖了好久。

大多数情况下,我们用Linux系统,是为了发挥命令行程序高效的威力,通过终端远程连接过去,一个黑框框里干完所有的活。但是,偶尔也需要运行一下图形界面程序,比如Web浏览器、Oracle安装程序等。而Linux系统主机通常做服务用,不会在图形支持方面堆很高的配置,这时我们可以利用X11的特性,在远端(Linux主机)运行X Client,但让安装了X Server的本地主机(如Windows主机)负责显示程序界面和交互。

阅读全文

WSLg:为WSL增光添彩

本文共1800余字,预计阅读时间6分钟,本文知乎连接:WSLg:为WSL增光添彩,本文同步发布于silaoA的博客
关注学习了解更多的Cygwin、Linux技术。

2021年微软的build大会没有刻意抢Google IO 2021之前,这一次微软继续带来了Visual Studio、Teams、.NET、VS Code、MAUI等一系列新内容,不忘践行“Microsoft ❤ Developer”、“Microsoft ❤ Linux”,还带来WSLg

阅读全文

Python自动操作GUI神器PyAutoGUI

本文共3500余字,预计阅读时间12分钟,本文同步发布于知乎专栏和微信公众号平台。
关注学习了解更多的Cygwin、Linux、Python技术。

日常使用计算机,命令行程序可以说是为批量操作文件而生,但作为普通用户,最多的还是通过鼠标键盘操作形形色色的图形界面程序。试想下面一个场景:有成千上万个文件,都需要通过图形界面进行同样的一套编辑、保存工作,靠手工一遍一遍地重复做,累死人不说,时间久了必然出现错误,作为程序猿,怎么能忍重复3次以上的工作,必须利用程序自动化。要想图形界面也能像命令行程序那样精确控制,就需要GUI自动化工具了。不得不赞Python生态之丰富,GUI自动化自动化工具也有多种库可选,比如Windows平台的pywin32,以及本文主角——跨平台的PyAutoGUI。

阅读全文

Cygwin系列(十二):了解X

本文共4500余字,预计阅读时间14分钟,本文同步发布于知乎(账号silaoA)和微信公众号平台(账号伪码人)。
关注学习了解更多的Cygwin、Linux技术。

前面连续多篇折腾了终端和命令行,本篇先初步了解X,并敬请期待下一篇:在Windows上折腾X。

阅读全文

Cygwin系列(十一):折腾终端2

本文共2500余字,预计阅读时间8分钟,本文同步发布于知乎(账号silaoA)和微信公众号平台(账号伪码人)。
关注学习了解更多的Cygwin、Linux技术。

本文承接前篇 Cygwin系列(十):折腾终端1,继续深度扒终端。既然Windows Console与UNIX/Linux上的pty机制完全不同,要让基于不同机制的命令行程序和终端配合起来,颇费周章。又双㕛叒叕祭出David Wheeler大神的著名论断:

All problems in computer science can be solved by another level of indirection(计算机科学领域的任何问题都可以通过增加一个间接的中间层来解决)。

也就是说,解决办法无非是在已有条件下继续打造“中间层”,而Cygwin这个中间层试图直接补齐Windows API和UNIX/Linux API之间的差异,显得有点“重量”。

阅读全文

Cygwin系列(十):折腾终端1

本文共5200余字,预计阅读时间16分钟,本文同步发布于知乎(账号silaoA)和微信公众号平台(账号伪码人)。
关注学习了解更多的Cygwin、Linux技术。

关于终端的概念,已在 Linux Cygwin知识库(一):一文搞清控制台、终端、shell概念 中论述。UNIX/Linux系统对命令行有着天然的支持,Windows对命令行生态却不怎么重视,本着死磕自己娱乐大家的精神,深度扒一扒命令行生态中的重要元素——终端。

阅读全文

Python操作Excel文件(3):优雅干将openpyxl

本文共4000余字,预计阅读时间16分钟,本文同步发布于知乎专栏和微信公众号平台。
关注学习了解更多的Cygwin、Linux、Python技术。

openpyxl诞生于Python生态中缺乏原生读写Office Open XML格式文件(也就是xlsx格式)的背景下,由一群志愿者在业余时间开发维护,项目地址 http://bitbucket.org/openpyxl/openpyxl。相较pyexcelxlrd/xlwt/xlutilsopenpyxl对Excel的功能支持更加丰富,同时在实现上又十分优雅,操作逻辑与直接用Excel软件接近,运行效率也很高,堪称Excel文件操作的优雅干将。
本文所用openpyxl版本为3.0,旧版本可能部分API有所不同。

阅读全文

Python操作Excel文件(2):中规中矩三兄弟xlrd、xlwt和xlutils

本文共3000余字,预计阅读时间14分钟,本文同步发布于知乎(账号silaoA)和微信公众号平台(账号伪码人)。
关注学习了解更多的Cygwin、Linux、Python等技术。

xlrdxlwtxlutilsSimplistix公司开发,原网站内容基本都清空了,项目迁移到http://www.python-excel.org,并在GitHub开源,见https://github.com/python-excel。三兄弟在操作Excel方面表现中规中矩,能够覆盖大部分需求,也是本人最先熟悉的库。三兄弟一起配合才能比较方便地实现Excel文件的读写,xlutils不是必需,但额外提供了一些简化操作的工具函数。

阅读全文