Python制作斗图工具,人称斗帝
前言
提起人工智能,就不得不提Python语言,但实际上Python不是什么新东西,反而这是一门相当老的语言了起源甚至可以追溯到80年代末90年代初,那为何它会在人工智能这个风口独领风骚占据了半壁江山呢?Python的特点总体可以归纳成以下几点:
成熟完善的社区——比起go、koltin之类的新兴语言,相关资料简直是好找一个数量级
大量的库——其中包括了Python的库、用Python包装的C/C++库、甚至各种语言的库
与生俱来的C/c++互操作性——其实不止C,Python与很多语言都具备良好的互操作性,胶水语言的大名不是白叫的
语法简单优雅——Python的哲学就是简单,甚至某些问题只会提供你唯一的解决方案,不够灵活但简单啊!而且,对于一些不是计算机专业人士来说,他的语法可能更接近自然语言,更容易被接受,而且是真正的编程语言(它的竞争对手——各种Shell脚本语言哭晕在厕所)
首先,我们准备两个素材
先准备一个底图
然后请出——————————馆长大人:
然后,使用PIL库组合一下它们
PIL是Python的一个视觉处理库,目前已经停止维护了,但它后继有人啊,pillow库fork了它,因此一般我们说PIL的时候,实际上用的是pillow
Python的外部依赖,需要通过pip工具进行安装,然后才能在代码里import到相应的包,下面以安装过pillow为例:
pip install pillow
引入依赖包
from PIL import Image,ImageDraw,ImageFont
加载图片
组合图片
加上点文字
上面的argv[1]就是取第一个命令行参数
走你!
运行一下我们脚本:
python emofigther.py "Hellow World!"
然后,你就会得到一个Hellow World!(你们没有看到,我打错单词了!)
随便再扩展一下
我相信你们的斗图之魂已经有点按耐不住了,但是等等,现在生成的图片还得到output文件夹找,非常不方便是吧,能不能实现在运行脚本后,生成的图片自动放到剪贴板呢?当然可以!我们可以用pywin32这个package,他提供了一套用python封装的win32库(windows应用开发的一套底层库)接口。
然后再运行下我们的emofigther
python emofigther.py "Ctrl-V大法好!"
然后找个地方试试Ctrl-V,惊喜不惊喜,意外不意外?
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Redis快速入门
- 捉虫记:Unexpected end of JSON input while parsing
- 重新思考日志:业务系统竟然是一个大数据库?
- 测试面试题集-Linux常用命令
- 「真香警告」鱼头手摸手教你在小程序里用composition-api
- 【技术文】SSL握手中的几个密码
- 分布式监控系统SkyWalking
- 文献笔记二十九:银合欢(Leucaena trichandra)线粒体基因组
- Docker Swarm群集配置实战——第一战
- 文献笔记五十:vcf2poptree根据vcf文件构建进化树的网页工具
- typescript基础篇(6):泛型
- Flutter 初学者必读的高级布局规则
- Docker Swarm群集配置实战——第二战
- Python 基础(五):序列
- OpenCV黑魔法之隐身衣 | 附源码