Baike.dev
All toolsOnline toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
P

p5

> 编程语言
Open source

p5 is a Python package based on the core ideas of Processing.

761 stars0 likes1 views
WebsiteGitHub

About

p5 is a Python package based on the core ideas of Processing.

p5

|Downloads| |License| |Version| |Slack| |build-tests| |downloads-month|

.. |License| image:: https://img.shields.io/pypi/l/p5?color=light-green .. |Version| image:: https://img.shields.io/pypi/v/p5?color=blue .. |Slack| image:: https://img.shields.io/badge/Slack-Join!-yellow
:target: https://join.slack.com/t/p5py/shared_invite/zt-g9uo4vph-dUVltiE1ixvmjFTCyRlzpQ .. |build-tests| image:: https://github.com/p5py/p5/actions/workflows/build-tests.yml/badge.svg .. |Downloads| image:: https://static.pepy.tech/badge/p5
:target: https://pepy.tech/project/p5 .. |downloads-month| image:: https://static.pepy.tech/badge/p5/month :target: https://pepy.tech/project/p5

p5 is a Python library that provides high level drawing functionality to help you quickly create simulations and interactive art using Python. It combines the core ideas of Processing _ — learning to code in a visual context — with Python's readability to make programming more accessible to beginners, educators, and artists.

To report a bug / make a feature request use the issues page _ in this repository. You can also use the discourse platform _ to ask/discuss anything related to p5py.

Example

.. image:: https://github.com/p5py/p5/raw/develop/docs/_static/readme.gif

p5 programs are called "sketches" and are run as any other Python program. The sketch above, for instance, draws a circle at the mouse location that gets a random reddish color when the mouse is pressed and is white otherwise; the size of the circle is chosen randomly. The Python code for the sketch looks like:

.. code:: python

from p5 import *

def setup(): size(640, 360) no_stroke() background(204)

def draw(): if mouse_is_pressed: fill(random_uniform(255), random_uniform(127), random_uniform(51), 127) else: fill(255, 15)

   circle_size = random_uniform(low=10, high=80)

   circle((mouse_x, mouse_y), circle_size)

def key_pressed(event): background(204)

p5 supports different backends to render sketches,

"vispy" for both 2D and 3D sketches & "skia" for 2D sketches

use "skia" for better 2D experience

Default renderer is set to "vispy"

run(renderer="vispy") # "skia" is still in beta

Documentation

The p5py documentation can be found here p5 documentation _

Installation

Take a look at the installation steps here in the p5 installation page _

Contributing

We welcome contributions from anyone, even if you are new to open source. You can start by fixing the existing issues _ in p5py. In case you need any help or support from the p5py development community, you can join our slack group _.

License

p5 is licensed under the GPLv3. See LICENSE _ for more details. p5 also includes the following components from other open source projects:

  • OpenGL shaders from the Processing _ project. Licensed under LGPL v2.1. See LICENSES/lgpl-2.1.txt _ for the full license text.

All licenses for these external components are available in the LICENSES folder.

Issues· 0 open

View all issuesOpen on GitHub

No open issues yet, or sync has not completed.

> Tags

Pythonprocessingpython

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedSep 17, 2026
Category编程语言
PricingOpen source

> Related tools

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言