Pillow

Pillow是用于图像处理的库,可用于图像存储、图像显示、图像处理(改变大小、旋转等)。

基本使用

1
2
3
4
5
6
7
8
9
from PIL import Image
im = Image.open("test.png")
print(im.format, im.size, im.mode)
# format 这个属性标识了图像来源。如果图像不是从文件读取它的值就是None。
# size属性是一个二元tuple,包含width和height(宽度和高度,单位都是px)。
# mode 属性定义了图像bands的数量和名称,以及像素类型和深度。常见的modes 有 “L” (luminance) 表示灰度图像, “RGB” 表示真彩色图像, and “CMYK” 表示出版图像。

im.show() # 显示图像

转换文件格式到JPEG

1
2
3
4
5
6
7
8
9
10
11
12
13

from __future__ import print_function
import os, sys
from PIL import Image

for infile in sys.argv[1:]:
f, e = os.path.splitext(infile)
outfile = f + ".jpg"
if infile != outfile:
try:
Image.open(infile).save(outfile) # save方法第二个参数可以指定文件格式
except IOError:
print("cannot convert", infile)

Read More

Pyhon2跟Python3的区别

str和bytes

基本概念

  • 字节(Byte ):是计算机信息技术用于计量存储容量的一种计量单位,作为一个单位来处理的一个二进制数字串,是构成信息的一个小单位。最常用的字节是八位的字节,即它包含八位的二进制数;
  • 位(bit):是计算机 内部数据 储存的最小单位,11001100是一个八位二进制数;
  • 字节(byte):是计算机中 数据处理 的基本单位,习惯上用大写 B 来表示,1B(byte,字节)= 8bit(位);
  • 字符:指计算机中使用的字母、数字、字和符号,包括:1、2、3、A、B、C、~!·#¥%……—*()——+等等。
Read More

Python多线程

Python代码的执行由虚拟机来控制。Python再主循环中,同时只有一个线程再执行,就像单CPU的系统中运行多个进程那样,内存中可以存放多个程序,但任意时刻,只有一个程序再CPU中运行。

对Python虚拟机的访问由全局解释器锁(global interpreter lock)来控制,正是这个锁能保证同一时刻只有一个线程在运行。

参考

Read More