the copy(method will return new image object with the same image as the image object it was called on this is useful if you need to make changes to an image but also want to keep an untouched version of the original for exampleenter the following into the interactive shellfrom pil import image catim image open('zophie png'catcopyim catim copy(the catim and catcopyim variables contain two separate image objectswhich both have the same image on them now that you have an image object stored in catcopyimyou can modify catcopyim as you like and save it to new filenameleaving zophie png untouched for examplelet' try modifying catcopyim with the paste(method the paste(method is called on an image object and pastes another image on top of it let' continue the shell example by pasting smaller image onto catcopyim faceim catim crop(( )faceim size ( catcopyim paste(faceim( )catcopyim paste(faceim( )catcopyim save('pasted png'first we pass crop( box tuple for the rectangular area in zophie png that contains zophie' face this creates an image object representing cropwhich we store in faceim now we can paste faceim onto catcopyim the paste(method takes two argumentsa "sourceimage object and tuple of the xand -coordinates where you want to paste the top-left corner of the source image object onto the main image object here we call paste(twice on catcopyimpassing ( the first time and ( the second time this pastes faceim onto catcopyim twiceonce with the top-left corner of faceim at ( on catcopyimand once with the top-left corner of faceim at ( finallywe save the modified catcopyim to pasted png the pasted png image looks like figure - note despite their namesthe copy(and paste(methods in pillow do not use your computer' clipboard note that the paste(method modifies its image object in placeit does not return an image object with the pasted image if you want to call paste(but also keep an untouched version of the original image aroundyou'll need to first copy the image and then call paste(on that copy