PILを使用して画像のピクセルマップを読み込んだ後、マップをPostgreデータベースのVARCHAR列に文字列として格納します。私はこのデータベースのVARCHAR文字列を私のPythonスクリプトから再度読み込み、pix=im.load()
を使用したときに得られる同じピクセルマップオブジェクトに変換したいので、このように解析できます。Python 3 putpixel(PIL)オブジェクトを文字列と逆に変換する
結果データベースを読んだ後にしたい文字列print(mypixmap)
で完全に印刷された場合
mypixmap[0][0] = 255 mypixmap[1][0] = 255
mypixmap[0][1] = 154 mypixmap[1][1] = 0
mypixmap[0][2] = 120 mypixmap[1][1] = 30
mypixmap[0][3] = 100 mypixmap[1][1] = 255
のように...
タプルのリストは次のように気にいらないことになる。この場合
[(65, 65, 65, 255)(49, 49, 49, 255)(255, 255, 255, 255)(255, 255, 255, 255)(255, 255, 255, 255)(255, 255, 255, 255)(255, 255, 255, 255)(255, 255, 255, 255)(255, 255, 255, 255)(255, 255, 255, 255)(255, 255, 255, 255)(254, 254, 254, 255)(254, 254, 254, 255)(254, 254, 254, 255)(255, 255, 255, 255)(255, 255, 255, 255)(255, 255, 255, 255)(255, 255, 255, 255)(255, 255, 255, 255)(255, 255, 255, 255)(255, 255, 255, 255)(255, 255, 255, 255)(255, 255, 255, 255)(168, 168, 168, 255)(133, 133, 133, 255)(255, 255, 255, 255)]
しかしprint(mypixmap[0][0])
いかなるなし65
を与えるだろう角括弧は最初の整数を検索するためです。
私はPostgreのドライバとSQLを知っていますので、オブジェクトをデータベースに格納する必要があります(おそらくVARCHARはいいですか?)以前のように戻してください。
私は適切な条件を使用しなかったと申し訳ありませんが、私はまだPythonで私の最初のステップを学んでいます。
マップをPostgresqlに保存しないでください。イメージをバイナリ形式で['bytea'](https://www.postgresql.org/docs/current/static/datatype-binary.html)に保存します。 –