mirror of
				https://github.com/python-pillow/Pillow.git
				synced 2025-11-04 09:57:43 +03:00 
			
		
		
		
	
		
			
				
	
	
		
			48 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
			
		
		
	
	
			48 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
.. py:module:: PIL.PyAccess
 | 
						|
.. py:currentmodule:: PIL.PyAccess
 | 
						|
 | 
						|
:py:mod:`~PIL.PyAccess` Module
 | 
						|
==============================
 | 
						|
 | 
						|
The :py:mod:`~PIL.PyAccess` module provides a CFFI/Python implementation of the :ref:`PixelAccess`. This implementation is far faster on PyPy than the PixelAccess version.
 | 
						|
 | 
						|
.. note:: Accessing individual pixels is fairly slow. If you are
 | 
						|
          looping over all of the pixels in an image, there is likely
 | 
						|
          a faster way using other parts of the Pillow API.
 | 
						|
 | 
						|
          :mod:`~PIL.Image`, :mod:`~PIL.ImageChops` and :mod:`~PIL.ImageOps`
 | 
						|
          have methods for many standard operations. If you wish to perform
 | 
						|
          a custom mapping, check out :py:meth:`~PIL.Image.Image.point`.
 | 
						|
 | 
						|
Example
 | 
						|
-------
 | 
						|
 | 
						|
The following script loads an image, accesses one pixel from it, then changes it. ::
 | 
						|
 | 
						|
    from PIL import Image
 | 
						|
 | 
						|
    with Image.open("hopper.jpg") as im:
 | 
						|
        px = im.load()
 | 
						|
    print(px[4, 4])
 | 
						|
    px[4, 4] = (0, 0, 0)
 | 
						|
    print(px[4, 4])
 | 
						|
 | 
						|
Results in the following::
 | 
						|
 | 
						|
    (23, 24, 68)
 | 
						|
    (0, 0, 0)
 | 
						|
 | 
						|
Access using negative indexes is also possible. ::
 | 
						|
 | 
						|
    px[-1, -1] = (0, 0, 0)
 | 
						|
    print(px[-1, -1])
 | 
						|
 | 
						|
 | 
						|
 | 
						|
:py:class:`PyAccess` Class
 | 
						|
--------------------------
 | 
						|
 | 
						|
.. autoclass:: PIL.PyAccess.PyAccess()
 | 
						|
    :members:
 | 
						|
    :special-members: __getitem__, __setitem__
 |