当前位置: 首页 > 编程笔记 >

Python基于identicon库创建类似Github上用的头像功能

傅阿苏
2023-03-14
本文向大家介绍Python基于identicon库创建类似Github上用的头像功能,包括了Python基于identicon库创建类似Github上用的头像功能的使用技巧和注意事项,需要的朋友参考一下

本文实例讲述了Python基于identicon库创建类似Github上用的头像功能。分享给大家供大家参考,具体如下:

Identicon在很多大型IT网站上可以见到,比如Github,Sourceforge,Stackoveflow等等, 刚刚注册的账号的个人信息的默认图标​都​是​一​些​看​上​去​像​七​巧​板​拼​凑​的​图​案​,​对​称​又​变​化​多​端​。

本​人​也​是​因​为​好​奇​才​在​网​上​搜​了​这​个​算​法​,​主​要​是​哈​希​算​法​,​把​邮​箱​或​者​I​P​的​信​息​图​形​化​,​很​直​观​。

这个算法有很多版本, php的, .net的, python的, ruby的, 因为咱们社区是python的, 所以这里给大家发一个python版本的.

使用示例:

1. 直接到 https://github.com/shnjp/identicon 下载identicon.py,
2. 将identicon.py放到你能找到的地方.
3. 然后在相同的目录里新建一个test.py
4. 打开test.py

输入以下代码:

import identicon
img= identicon.render_identicon('123123', 16)
img.show()

这样就能够看到图像了, 大小是3*16=48. 即图片大小是48X48像素的尺寸.如果报错了, 就是你没有安装python的图像处理模块PIL, 安装之后再试.

保存图像

上面的代码只是简单的使用, 还没保存.保存代码如下:

import identicon
img= identicon.render_identicon('123123', 16)
img.save('123123.png')

会在相同的目录保存一个png格式的图片

批量生成图片

代码如下:

import identicon
def gen_identicon(code,size):
  img= identicon.render_identicon(code, 16)
  #img.show()
  img.save('%s_%s.png'%(code,size))
for x in xrange(10000000,10000000+5):
  gen_identicon(x, 16)
for x in xrange(20000000,20000000+5):
  gen_identicon(x, 16)
for x in xrange(40000000,40000000+5):
  gen_identicon(x, 16)
for x in xrange(80000000,80000000+5):
  gen_identicon(x, 16)
for x in xrange(160000000,160000000+5):
  gen_identicon(x, 16)

说明:

identicon.render_identicon(code, 16)

这里的code是一个数值, 或者字符串数值, 如果code比较大, 比如code=10000000, 生成的图片就是彩色的. code比较小, 比如code=1~100之间的, 生成的图片就是黑白色的.

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

 类似资料:
  • 问题内容: 改善这个问题 我正在 寻找一个Java绘图库,它可能与matplotlib对于python一样好。 我已经针对SO问题进行了一些研究,但是自从被问起以来,其中许多问题已经过时,并且发生了很大变化。提出的建议导致网站从表面上看似乎提供了很好的库,但是 我的需求是即时的,我无暇花时间使用它们并通过经验找到最佳的库。 因此,我想问一下您的经验,你们中的任何人都可以推荐一个针对java的图形库

  • 问题内容: 您使用哪个类似Java的readline类库?像库这样的“ readline”是指用于编辑控制台输入,支持历史记录,制表符完成以及类似内容的库。我正在寻找一个,但不能选择那么多(jLine- 无需 维护,java-readline- 2003年最新发行,其他?) 问题答案: 从命令行执行时,我已经使用JLine将历史记录等添加到Clojure REPL(JVM进程)中。它只是神奇地工作

  • 问题内容: 如何用Java编写等效的代码? 问题答案: 您可能还希望将类本身公开,但这实际上是将字面量转换为Java。 C ++模板和Java泛型之间还有其他区别,但是对于您的示例,这些都不是问题。

  • 我试图在Python3.7上创建一个图像(在Thonny上)。我想设置一个以灰色为单位的值的矩阵,所以0将是黑色,255将是白色。这个矩阵将代表我要创建的图像的像素。基本上,我想创建一个基于矩阵的黑白图像。下面是我的代码: 当我运行程序时,它说a是问题所在:“颜色必须是int或tuple”。 谢谢你的帮助,祝你有愉快的一天! 我试着用图像。来自Marray: 有了这个,我应该有一个图像50 x 8

  • 本文向大家介绍用Python创建类,包括了用Python创建类的使用技巧和注意事项,需要的朋友参考一下 在类的语句创建一个新的类定义。该类的名称紧随关键字class之后紧跟一个冒号,如下所示- 该类具有一个文档字符串,可以通过ClassName .__ doc__访问。 class_suite由定义类成员,数据属性和函数的所有组件语句组成。 示例 以下是一个简单的Python类的示例- 变量emp

  • 问题内容: 我正在寻找一种解决方案,可以从adb访问我们应用程序的内部状态以进行调试。我已经使用了dumpsys来获取系统服务的内部状态,所以现在我想知道是否可以将应用程序的接口公开到adb。到目前为止,我唯一想到的就是定期记录信息,然后只读取logcat,但如果可能的话,我希望能够通过adb直接与应用程序进行交互,因此问题是如何在我们的应用程序中实现此功能。 问题答案: 在您的覆盖方法中,例如:

  • 本文向大家介绍Android实现头像上传功能,包括了Android实现头像上传功能的使用技巧和注意事项,需要的朋友参考一下 之前做这个头像上传功能还是花了好多时间的,今天我将我的代码分享给大家先看效果图 首先看上传图片的工具类,一点都没有少复制就可以用 从相册获取图片的方法 从系统相机拍照获取照片 调用系统裁剪工具裁剪图片 上传服务器的方法 重新服务器响应方法 重写这些方法需要实现接口 重写onA

  • 本文向大家介绍基于JavaScript实现类似于百度学术高级检索功能,包括了基于JavaScript实现类似于百度学术高级检索功能的使用技巧和注意事项,需要的朋友参考一下 百度学术http://xueshu.baidu.com/高级检索是通过前台生成后台内部高级语法来实现高级检索的,可以通过前台js做字符串拼接传给后台实现,难度不大: 下面是高级检索的核心功能代码,我使用的是纯js实现,并未使用j