pip3 install pillow

读取硬盘中的文件,在页面显示

f = open('static/imgs/yj.png','rb')
data = f.read()
f.close()
return HttpResponse(data)

创建一个空白图片

from PIL import Image
f = open('code.png','wb') #打开一个文件
img = Image.new(mode='RGB', size=(120, 30), color=(255, 255, 255)) #创建一个图片
img.save(f,'png') #图片保存在文件里
f.close()

将图片写入内存,再从内存读出来  

#BytesIO 相当于开辟一段内存空间,可以读写

from PIL import Image,ImageDraw,ImageFont
from io import BytesIO f = BytesIO() #相当于开辟一段内存空间
img = Image.new(mode='RGB', size=(120, 30), color=(255, 255, 255)) #创建一个图片对象
img.save(f,"png") #内存里有图片
data = f.getvalue() #获取内存中的数据
return HttpResponse("...")

  

from PIL import Image,ImageDraw
from io import BytesIO
f = BytesIO()
img = Image.new(mode='RGB', size=(120, 30), color=(255, 255, 255)) #创建一个图片对象
draw = ImageDraw.Draw(img, mode='RGB') #在图片上创建一个对象 #在图片上画点
draw.point([10, 10], fill="red") #点在图片上的坐标位置
draw.point([20, 10], fill=(255, 255, 255)) #在图片上画线
draw.line((15,10,50,50), fill='red') #前两个起始位置的横纵坐标,后两个结束位置的横纵坐标
draw.line((45,20,100,100), fill=(0, 255, 0))

  

  

python 随机字符串的更多相关文章

  1. Python随机字符串验证码

    def code_get(self): source = ['] #数字验证码 # source = [ 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H','I','J', ...

  2. Python学习总结7:随机字符串和随机数

    Python生成随机数与随机字符串,需要import random模块.random模块最常用的几个函数如下: 1. random.random(a, b) 用于生成一个0到1的随机符点数: 0 &l ...

  3. Python生成随机字符串

    利用Python生成随机域名等随机字符串. #!/usr/bin/env python# -*- coding: utf-8 -*- from random import randrange, cho ...

  4. python生成随机数、随机字符串

    python生成随机数.随机字符串 import randomimport string # 随机整数:print random.randint(1,50) # 随机选取0到100间的偶数:print ...

  5. Python 中的POST/GET包构建以及随机字符串的生成-乾颐堂

    现在,我们来用Python,创建GET包和POST包. 至于有什么用处,大家慢慢体会. Python 中包含了大量的库,作为一门新兴的语言,Python 对HTTP有足够强大的支持. 现在,我们引入新 ...

  6. Golang 和 Python 随机生成N位字符串

    Golang: func RandomString(n int) string { var letters = []byte("ABCDEFGHIGKLMNOPQRSTUVWXYZabcde ...

  7. python 生成随机字符串

    1.生成随机字符串 #数字+字母+符号 def getRandChar(n): l = [] #sample = '0123456789abcdefghijklmnopqrstuvwxyz!@#$%^ ...

  8. python(七)字符串格式化、生成器与迭代器

    字符串格式化 Python的字符串格式化有两种方式:百分号方式.format方式 1.百分号的方式 %[(name)][flags][width].[precision]typecode (name) ...

  9. random and password 在Linux下生成crypt加密密码的方法,shell 生成指定范围随机数与随机字符串

    openssl rand -hex n (n is number of characters) LANG=c < /dev/urandom tr -dc _A-Z-a-z-0-9 | head ...

随机推荐

  1. HDU.1394 Minimum Inversion Number (线段树 单点更新 区间求和 逆序对)

    HDU.1394 Minimum Inversion Number (线段树 单点更新 区间求和 逆序对) 题意分析 给出n个数的序列,a1,a2,a3--an,ai∈[0,n-1],求环序列中逆序对 ...

  2. 【loj2472】IIIDX

    Portal --> loj2472 Solution 感觉是一道很有意思的贪心题啊ovo(想了一万个假做法系列==) 比较直观的想法是,既然一个数\(i\)只会对应一个\(\lfloor\fr ...

  3. uCOS-II之移植20160823

    首先我们看一下uC/OS-II的框架图: 1.配置文件修改 +------------------------------------------ |core: os_core.c |  os: os ...

  4. Java--Inheritance constructor继承中的构造方法问题(一)

    Java规定,一个父类可以同时拥有多个子类,但一个子类只能有一个父类,即单重继承,允许多层继承,即子类还可以有自己的子类,在下一层继承关系中原先的子类就变成了父类,这样的继承关系就形成了继承树. 子类 ...

  5. 大自然的搬运工:Ubuntu环境下gedit的一些个简单配置

    gedit是Ubuntu默认的文本编辑器,个人觉得还是不错的,用它来编程写一些小的demo也很方便,原谅我比较菜,vim用起来感觉打字速度真的很慢呀. 下面对gedit做一些简单配置,方便编程. 一. ...

  6. 回顾static与final的作用

    static是java中非常重要的一个关键字,而且它的用法也很丰富,主要有四种用法: 用来修饰成员变量,将其变为类的成员,从而实现所有对象对于该成员的共享: 用来修饰成员方法,将其变为类方法,可以直接 ...

  7. hihocoder #1584 : Bounce

    题意; 有一个n*m的网格阵,球从左上角开始在网格中碰撞,碰到边界就直角反弹,到达格子的角落结束,求途中经过一次的格子数. 代码: //神马规律啊,设x表示球与垂直面的撞击次数,y为球与水平墙面的撞击 ...

  8. mobiscroll 案例git

    https://github.com/zhoushengmufc/iosselect

  9. extjs grid demo

    Ext.onReady(function () { var store = Ext.create('Ext.data.Store', { fields: ['id', 'name', 'account ...

  10. vee-validate

    http://vee-validate.logaretm.com/ 表单校验,配合VUE使用