-1

4 つの値を持つリストを実行する for ループを作成しようとしています: 16, 32, 64, 128.

これらは、スクリプトが画像のサイズを変更するために必要な 4 つのサイズです。

これは私の完全なコードです:

def on_btn_resize_clicked(self, widget):
    if len(self.imgOriginal) > 0 and len(self.appRoot) > 0: #check if original-image and app-root is select
        _imgFilename = os.path.splitext(basename(self.imgOriginal))[0] #get filename
        _imgFileExtension = os.path.splitext(basename(self.imgOriginal))[1] # get filextension

        quickly_sizes = [16, 32, 64, 128] #define all sizes, resize to 16x16, 32x32, 64x64, 128x128
        for size in quickly_sizes:
            print size
            im=Image.open(self.imgOriginal)
            im = im.convert("RGB")
            im = im.resize((int(size), int(size)), Image.ANTIALIAS)
            im.save(self.appRoot+"/data/media/"+_imgFilename+str(size)+_imgFileExtension)

        widget.set_label("All four images is save!")
        from subprocess import call
        call(["nautilus", self.appRoot+"/data/media/"]) #open/show folder where all files is save

ループは実行されていますが、画像はフォルダーに保存されません。

私は何を間違っていますか?

4

1 に答える 1

0

上記のコードは機能します:)

ただし、最初に Nautilus/gnome-open を閉じてから、もう一度開く必要があります。その後、すべての画像が表示されます。または単に「ls」

from subprocess import call
call(["nautilus", self.appRoot+"/data/media/"])
于 2012-10-21T13:57:46.740 に答える