Помогите упростить код и
по возможности сделать удобным.
Для решения задачи, описанной выше написал следующий код:
from PIL import Image
a = input('1-r: ')
b = input('2-r: ')
f = '.jpg'
name = input('name: ')
img=range(int(a), int(b)+2)
if len(img) >= 1:
image = Image.open(str(img[0])+f)
w, h1 = image.size
print(h1)
if len(img) >= 2:
image = Image.open(str(img[1])+f)
w, h2 = image.size
print(h2)
if len(img) >= 3:
image = Image.open(str(img[2])+f)
w, h3 = image.size
print(h3)
if len(img) >= 4:
image = Image.open(str(img[3])+f)
w, h4 = image.size
print(h4)
if len(img) >= 5:
image = Image.open(str(img[4])+f)
w, h5 = image.size
print(h5)
if len(img) >= 6:
image = Image.open(str(img[5])+f)
w, h6 = image.size
print(h6)
if len(img) == 2:
imgs = Image.new('RGB', (w, h1+h2+h3))
elif len(img) == 3:
imgs = Image.new('RGB', (w, h1+h2+h3))
elif len(img) == 4:
imgs = Image.new('RGB', (w, h1+h2+h3))
elif len(img) == 5:
imgs = Image.new('RGB', (w, h1+h2+h3+h4))
elif len(img) == 6:
imgs = Image.new('RGB', (w, h1+h2+h3+h4+h6))
else:
print("Занова rgb!")
if len(img) >= 1:
img1 = Image.open(str(img[0])+f)
if len(img) >= 2:
img2 = Image.open(str(img[1])+f)
if len(img) >= 3:
img3 = Image.open(str(img[2])+f)
if len(img) >= 4:
img4 = Image.open(str(img[3])+f)
if len(img) >= 5:
img5 = Image.open(str(img[4])+f)
if len(img) >= 6:
img6 = Image.open(str(img[5])+f)
if len(img) >= 1:
imgs.paste(img1, (0,0))
if len(img) >= 2:
imgs.paste(img2, (0,h1))
if len(img) >= 3:
imgs.paste(img3, (0,h1+h2))
if len(img) >= 4:
imgs.paste(img4, (0,h1+h2+h3))
if len(img) >= 5:
imgs.paste(img5, (0,h1+h2+h3+h4))
if len(img) >= 6:
imgs.paste(img6, (0,h1+h2+h3+h4+h5))
imgs.show()
imgs.save("../result/"+name+".png")
Все работает но присутствует дефекты, но мне он не нравится - слишком много условий. Подскажите как сделать код более простым?
PS Я новичок в изучении Python.
PPS Спасибо