読者です 読者をやめる 読者になる 読者になる

無職の雑記

Garbage in, garbage out.

2016/07/08

3時起床。「Body Artist」を読み終える、というか、最後まで行く。明日からもう一度最初から。次もデリーロを読むつもりだったが、ちょっと疲弊があるので、ウエルベック(の英訳)でも読もうか。ウエルベックは、デリーロよりも遥かに読みやすいはずなので。

昼寝してから少しだけpython。今日は正規表現の勉強をする気だったのだが、やる気が出ず。正規表現は色々な所で前提のように書かれていて、知ってないと読めないことが多すぎるので、なんとかしないと。あと、もう一つ前提的なのは、OOPというか、pythonでいえば、classとかselfとかいう何か。自分、これを未だに読めない。自分には必要のない概念なのだけれど、それを使った簡易なコードも読めないとやっぱり進めないところが多すぎる。

 ・・・

本日のpython。range()ってステップを設定できたのね、というのを知った(多分3度目くらいに)。

# 0〜9までの数字のリスト
[i for i in range(0,10)]  # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

# ステップを2に設定すると
[i for i in range(0,10,2)] # [0, 2, 4, 6, 8]

で、この用法が何に登場したかというと、pillowという画像処理モジュールの紹介の中(https://automatetheboringstuff.com/chapter17/)。本文は猫の画像なんだけど、ちょっとアレだから書き換えるとこんな感じ:

from PIL import Image

# まず、330*330の黒地を描く
im_black = Image.new('RGBA',(330,330),'black')
im_black

まっくろ。

f:id:unEmployed:20160708180724p:plain

# 30*30の白地を作る
im_white = Image.new('RGBA',(30,30),'white')

# で、その白地を、黒地の上にステップ60で敷き詰める(ような感じのコードを書く)
for left in range(0, 330, 60):
    for top in range(0, 330, 60):
        im_black.paste(im_white, (left, top))

# 結果、こうなる
im_black

格子模様。

f:id:unEmployed:20160708181013p:plain

ステップって例えばこういう時に使うのか、と。

広告を非表示にする