为什么我有时必须在我的python脚本上输入?

时间:2016-04-07 23:38:56

标签: python

这种情况多年来发生在我身上,在不同的机器上有很多不同的脚本。

今天我有一个这样的剧本:

def calc_hash(fname, hash_size = 8):
    image = Image.open(fname)
    # Grayscale and shrink the image in one step.
    image = image.convert('L').resize(
        (hash_size + 1, hash_size),
        Image.ANTIALIAS,
    )

    pixels = list(image.getdata())

    # Compare adjacent pixels.
    difference = []
    for row in xrange(hash_size):
        for col in xrange(hash_size):
            pixel_left = image.getpixel((col, row))
            pixel_right = image.getpixel((col + 1, row))
            difference.append(pixel_left > pixel_right)

    # Convert the binary array to a hexadecimal string.
    decimal_value = 0
    hex_string = []
    for index, value in enumerate(difference):
        if value:
            decimal_value += 2**(index % 8)
        if (index % 8) == 7:
            hex_string.append(hex(decimal_value)[2:].rjust(2, '0'))
            decimal_value = 0

    return ''.join(hex_string)

for i in os.listdir(target_folder):
    print calc_hash(i)

(注意这是使用Pillow库)

我让它运行了几个小时,当我回来时它被卡住而没有显示任何错误。一旦我点击进入,它继续正常运行。我刚刚运行了脚本,这次它没有冻结。为什么这会经常发生在我身上?

0 个答案:

没有答案