linux 下怎么画图?

linux 下怎么画图?,第1张

你要在你编写程序中实现画图功能的话,在linux下一般是基于xlib和opengl的,窗口化部分则是交给qt或gtk

嫌麻烦的话,可以用glut,这个是基于opengl的功能包,功能较简单,适合拿来玩熟原理

你需要使用sys.stdin.read来获取管道的输入。

看下图的代码。之所以没有写出文本,是希望读者能自己写一遍,而不是复制粘贴。自己动手写一遍必看10遍还更容易记住。

2

然后用echo命令把输出传给这个脚本

你可能会问为什么多了一个空行。这是因为echo本身会给文本加换行符,而print函数又加了一个。给print一个end=""参数就可以了。

即,print("来自Python的:", sys.stdin.read(), end="")

END

实战演练

假如你想要一个脚本来给输出的行数计数,怎么写?

例如: ls | count

就把ls的个数显示出来,你就知道有多少个文件或文件夹了。

代码如下图:

主要看第6、7行:

bi = sys.stdin.buffer.read()

由于考虑到文件名的编码可能不是utf-8,所以直接read可能出现乱码(准确地说,不是乱码,而是UnicodeDecodeError,程序根本运行不下去),所以使用了buffer,它的含义是以字节形式读取输出,而不是字符。

li = bi.split(b"\n")[:-1]

以b“\n”为分隔符分了之后,最后一项的空字节,所以要切掉最后一项。

不要担心没有分成几行的ls的输出,经过测试,即使输出是一行,它们之间也是用b"\n"分割的。

3

把脚本改名为 count,放入 ~/bin 后测试一下。

楼主图形界面是必须在X模式下显示的,就算你需要浏览一张图片也需要X。

除非你这个图片单纯由printf colour组成的。

if [ -n "$(pgrep -x X) ]then

sudo killall X

fi

xinit &>/dev/null &

export DISPLAY=:0.0

你可以去问下你们老师,他绝对不敢说,比如说我打开office不需要启动X


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/7184251.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-02
下一篇2023-04-02

发表评论

登录后才能评论

评论列表(0条)

    保存