Mu Python

  1. Tuples mu Python ndi ofanana ndi mindandanda. Phunziroli, ndikhala ndikuyang'ana makamaka pazosiyana pakati pamndandanda ndi zidole. Zitsanzo zonse zomwe zalembedwazo zikugwiranso ntchito m'mabuku.
  2. Python has a module named time which provides several useful functions to handle time-related tasks. One of the popular functions among them is sleep. The sleep function suspends execution of the current thread for a given number of seconds. Example 1: Python sleep.

Matplotlib can be used to create histograms. A histogram shows the frequency on the vertical axis and the horizontal axis is another dimension. Usually it has bins, where every bin has a minimum and maximum value. Each bin also has a frequency between x and infinite.


Mu is a very simple Python editor for kids, teachers and beginner programmers.It’s written in Python and works on Windows, OSX, Linux and Raspberry Pi.

“[Papert] realized, ‘Oh, we could take the real content out here as aversion in the child’s world that is still the real thing.’ It’s not a fakeversion of math. It’s kind of like little league, or even T-ball. In sportsthey do this all the time. In music, they do it all the time. The idea is,you never let the child do something that isn’t the real thing – but youhave to work your ass off to figure out what the real thing is in thecontext of the way their minds are working at that developmental level.”– Alan Kay

Mu aspires to be “the real thing” as a development environment for beginnerprogrammers taking their first steps with Python.

As a rule of thumb, if you’re able to ask “why doesn’t Mu have [feature X]?”then you’re probably too advanced for using Mu as a development environment. Inwhich case, you should graduate to a more advanced editor.

Latest version


A simple Python editor for beginner programmers.

Project description

Mu - A Simple Python Code Editor

Mu is a simple code editor for beginner programmers based on extensive feedbackfrom teachers and learners. Having said that, Mu is for anyone who wants to usea simple “no frills” editor.

Mu is a modal editor with modes for Adafruit’s CircuitPython, the micro:bit’sversion of MicroPython, PyGame Zero and standard Python 3 (including agraphical debugger). Some of the modes make available a REPL (eitherrunning on the connected CircuitPython or MicroPython device or as a Jupyterbased iPython session in Python3 mode).

Mu is written in Python and works on Windows, macOS, Linux and Raspberry Pi. Theproject’s public facing website is We celebrate the work done byusers of mu at

We have extensive developer documentationincluding a guide forsetting up a development environment,contributor guidelines andsome suggested first steps.

Mu Python

We want our community to be a friendly place. The future of happiness pdf free download for windows 7. Therefore, we expect contributorsand collaborators to follow ourCode of Conduct.



  • Updated to the latest version of Qt to fix syntax highlighting issues in OSX.
  • Ensure CWD is set to the directory containing the script to be run in Python3mode.


Another bugfix and translation release. No new features were added. Unlessthere are show-stoppers, the next release will be 1.1 with new features.

  • Updated OSX to macOS, as per Apple’s usage of the terms. Thanks Craig Steele.
  • Updates and improvements to the Chinese translation. Thank John Guan.
  • Improved locale detection on macOS. Many thanks to Tiago Montes.
  • Cosmetic stripping of trailing spaces on save. Thanks to Tim Golden.
  • Update PyQt version so pip installed Mu works with Python 3.5. Thanks toCarlos Pereira Atencio.
  • Fix incorrect setting of dataTerminalReady flag. Thanks to GitHub [email protected]
  • Spanish language improvements and fixes by Juan Biondi, @yeyeto2788 andCarlos Pereira Atencio.
  • Improvements and fixes to the German translation by Eberhard Fahle.
  • Fix encoding bug on Windows which caused crashes and lost files. Many thanksto Tim Golden for this work.
  • Keyboard focus loss when closing REPL is now fixed. Thanks again Tim Golden.
  • More devices for Adafruit mode along with a capability to work with futuredevices which have the Adafruit vendor ID. Thanks to Limor Friend for thiscontribution.
  • Fix a bug introduced in 1.0.1 where output from a child Python process wasbeing truncated.
  • Fix an off-by-one error when reading bytes from UART on MicroPython devices.
  • Ensure zoom is consistent and remembered between panes and sessions.
  • Ensure mu_code and/or current directory of current script are on Python pathin Mu installed from the installer on Windows. Thanks to Tim Golden and TimMcCurrach for helping to test the fix.
  • Added Argon, Boron and Xenon boards to Adafruit mode since they’re alsosupported by Adafruit’s CircuitPython.
  • The directory used to start a load/save dialog is either what the user lastselected, the current directory of the current file or the mode’s workingdirectory (in order of precedence). This is reset when the mode is changed.
  • Various minor typo and bug fixes.


This is a bugfix and new translation release. No new features were added. Thenext release will be 1.1.0 with some new features.

  • Added a German translation by René Raab.
  • Added various new Adafruit boards, thanks Limor!
  • Added a Vietnamese translation by GitHub user @doanminhdang.
  • Fix bug in MicroPython REPL when dealing with colour escape sequences, thanksMartin Dybdal of Coding Pirates! Arrr.
  • Ensured anyone trying to setup on an incompatible version of Python is givena friendly message explaining the problem. Thanks to the hugely talentedRené Dudfield for migrating this helpful function from PyGame!
  • Added a Brasilian translation by Marco A L Barbosa.
  • Added missing API docs for PyGameZero. Thanks to Justin Riley.
  • Added a Swedish translation by Filip Korling.
  • Fixes to various metadata configuration entries by Nick Morrott.
  • Updated to a revised Chinese translation. Thanks to John Guan.
  • Added the Mappa MUndi (roadmap) to the developer documentation.
  • Added a Polish translation by Filip Kłębczyk.
  • Fixes and enhancements to the UI to aid dyslexic users by Tim McCurrach.
  • Updated to version for MicroPython on the BBC micro:bit. Manythanks to Damien George of the MicroPython project for his amazing work.
  • Many other minor bugs caught and fixed by the likes of Zander and Carlos!


  • Fix for font related issues in OSX Mojave. Thanks to Steve Stagg for spottingand fixing.
  • Fix for encoding issue encountered during code checking. Thanks to TimGolden for a swift fix.
  • Fix for orphaned modal dialog. Thanks for spotting this Zander Brown.
  • Minor revisions to hot-key sequences to avoid duplications. All documentedat
  • Update to latest version of uflash and MicroPython 1.0.0-rc.2 for micro:bit.
  • Updated to latest GuiZero in Windows installers.
  • Update third party API documentation used by QScintilla for code completionand call tips. Includes CircuitPython 3 and PyGame Zero 1.2.
  • Added swag related graphics to the repository (non-functional change).


  • Various UI style clean ups to make sure the look of Mu is more consistentbetween platforms. Thanks to Zander Brown for this valuable work.
  • Added French translation of the user interface. Thanks to Gerald Quintana.
  • Added Japanese translation of the user interface. Thanks to @MinoruInachi.
  • Added Spanish translation of the user interface. Thanks to Carlos PereiraAtencio with help from Oier Echaniz.
  • Added Portuguese translation of the user interface. Thanks to Tiago Montes.
  • Fixed various edge cases relating to the new-style flashing of micro:bits.
  • Fixed off-by-one error in the visual debugger highlighting of code (causedby Windows newlines not correctly handled).
  • Fixed shadow module related problem relating to Adafruit mode. It’s nowpossible to save “” files onto boards.
  • Updated to latest version of uflash and MicroPython 1.0.0-rc.1 for micro:bit.
  • Various minor bugs and niggles have been fixed.
Mu Python


  • Update to the latest version of uflash with the latest version of MicroPythonfor the BBC micro:bit.
  • Change flashing the BBC micro:bit to become more efficient (based on thecopying of files to the boards small “fake” filesystem, rather thanre-flashing the whole device in one go).
  • Ensure user agrees to GPL3 license when installing on OSX.
  • Fix Windows “make” file to correctly report errors thanks to Tim Golden.
  • The debugger in Python mode now correctly handles user-generated exceptions.
  • The debugger in Python mode updates the stack when no breakpoints are set.
  • Major update of the OSX based automated build system.
  • Modal dialog boxes should behave better on GTK based desktops thanks toZander Brown.
  • Right click to access context menu in file panes in micro:bit mode so localfiles can be opened in Mu.
  • Fix bug where REPL, Files and Plotter buttons got into a bad state onmode change.
  • Update to use PyQt 5.11.
  • On save, check for shadow modules (i.e. user’s are not allowed to savecode whose filename would override an existing module name).
  • Automatic comment toggling via Ctrl-K shortcut.
  • A simple find and replace diaolog is now available via the Ctrl-F shortcut.
  • Various minor bugs and niggles have been squashed.


  • Updated flashing in micro:bit mode so it is more robust and doesn’t blockon Windows. Thank you to Carlos Pereira Atencio for issue #350 and the politereminder.
  • Updated the mu-debug runner so if the required filename for the target isn’tpassed into the command, a helpful message is displayed to the user.
  • Developer documentation updates.
  • Updated to the latest version of uflash, which contains the latest stablerelease of MicroPython for the micro:bit. Many thanks to Damien George forall his continuing hard work on MicroPython for the micro:bit.
  • Inclusion of tkinter, turtle, gpiozero, guizero, pigpio, pillow and requestslibraries as built-in modules.
  • Update to latest version of Pygame Zero.
  • Fix plotter axis label bug which wouldn’t display numbers if value was afloat.
  • Separate session and settings into two different files. Session includesuser defined changes to configuration whereas settings contains sys-admin-yconfiguration.
  • Update the CSS for the three themes so they display consistently on allsupported platforms. Thanks to Zander Brown for his efforts on this.
  • Move the mode selection to the “Mode” button in the top left of the window.
  • Support for different encodings and default to UTF-8 where possible. Manythanks to Tim Golden for all the hard work on this rather involved fix.
  • Consistent end of line support on all platforms. Once again, many thanks toTim Golden for his work on this difficult problem.
  • Use mu-editor instead of mu to launch the editor from the commandline.
  • More sanity when dealing with cross platform paths and ensure filetypes aretreated in a case insensitive manner.
  • Add support for minification of Python scripts to be flashed onto a micro:bitthanks to Zander Brown’s nudatus module.
  • Clean up logging about device discovery (it’s much less verbose).
  • Drag and drop files onto Mu to open them. Thanks to Zander Brown for thisreally useful feature.
  • The old logs dialog is now an admin dialog which allows users to inspect thelogs, but also make various user defined configuration changes to Mu.
  • Plotter now works in Python 3 mode.
  • Fix problem in OSX with the mount command when detecting Circuit Pythonboards. Thanks to Frank Morton for finding and fixing this.
  • Add data flood avoidance to the plotter.
  • OSX automated packaging. Thanks to Russell Keith-Magee and the team atBeeWare for their invaluable help with this problematic task.
  • Refactoring and bug fixing of the visual debugger’s user interface. Thank youto Martin O’Hanlon and Carlos Pereira Atencio for their invaluable bugreports and testing.
  • Various fixes to the way the UI and themes are displayed (crisper icons onHiDPI displays and various other fixes). Thanks to Steve Stagg for puttinglipstick on the pig. ;-)
  • A huge number of minor bug fixes, UI clean-ups and simplifications.


  • A new plotter works with CircuitPython and micro:bit modes. If you emittuples of numbers via the serial connection (e.g. print((1, 2, 3)) asthree arbitrary values) over time these will be plotted as line graphs.Many thanks to Limor “ladyada” Fried for contributing code for this feature.
  • Major refactoring of how Mu interacts with connected MicroPython based boardsin order to enable the plotter and REPL to work independently.
  • Mu has a new mode for Pygame Zero (version 1.1). Thanks to Dan Pope forPygame Zero and Rene Dudfield for being Pygame maintainer.
  • It’s now possible to run mu “python3 -m mu”. Thanks to Cefn Hoile for thecontribution.
  • Add support for pirkey Adafruit board. Thanks again Adafruit.
  • Updated all the dependencies to the latest upstream versions.
  • Various minor bug fixes and guards to make Mu more robust (although this willalways be bugs!).


  • Add new PythonProcessPanel to better handle interactions with childPython3 processes. Includes basic command history and command editing.
  • Move the old “run” functionality in Python3 mode into a new “Debug” button.
  • Create a new “Run” button in Python3 mode that uses the newPythonProcessPanel.
  • Automation of 32bit and 64bit Windows installers (thanks to Thomas Kluyverfor his fantastic pynsist tool).
  • Add / revise developer documentation in light of changes above.
  • (All the changes mentioned above were supported by the Raspberry PiFoundation – Thank you!)
  • Update / add USB PIDs for Adafruit boards (thanks Adafruit for the heads up).
  • Minor cosmetic changes.
  • Additional test cases.


  • Fix to solve problem when restoring CircuitPython session when device is notconnected.
  • Fix to solve “data terminal ready” (DTR) problem when CircuitPython expectsDTR to be set (and it isn’t by default in Qt).
  • Added initial work on developer documentation found here:
  • Updates to USB PIDs for Adafruit boards.
  • Added functionally equivalent “” for Windows based developers.
  • Major refactor of the micro:bit related “files” UI pane: it no longer blocksthe main UI thread.


  • Update “save” related behaviour so “save as” pops up when the filename in the tab is double clicked.
  • Update the debugger so the process stops at the end of the run.
  • Ensure the current working directory for the REPL is set to mu_mode.
  • Add additional documentation about Raspberry Pi related API.
  • Update micro:bit runtime to lates MicroPython beta.
  • Make a start on developer documentation.


  • Updated Python 3 REPL to make use of an out of process iPython kernel (to avoid problems with blocking Mu’s UI).
  • Reverted Save related functionality to prior behaviour.
  • The “Save As” dialog for re-naming a file is launched when you click the filename in the tab associated with the code.


  • Ensured “Save” button prompts user to confirm (or replace) the filename of an existing file. Allows Mu to have something like “Save As”.
  • Updated to latest microfs library for working with the micro:bit’s filesystem.
  • Fixed three code quality warnings found by
  • Updated API generation so the output is ordered (helps when diffing the generated files).
  • Updated Makefile to create Python packages/wheels and deploy to PyPI.
  • Explicit versions for packages found within install_requires in
  • Minor documentation changes.


  • Debian related packaging updates.
  • Fixed a problem relating to how Windows stops the debug runner.
  • Fixed a problem relating to how Windows paths are expressed that was stopping the debug runner from starting.


  • Updated splash image to reflect trademark usage of logos.
  • Refactored the way the Python runner executes so that it drops into the Python shell when it completes.
  • The debug runner now reports when it has finished running a script.


  • Update PyInstaller icons.
  • Fix some tests that fail on older version of Python 3.
  • Add scripts to extract API information from Adafruit and Python 3.
  • Add generated API documentation to Mu so autosuggest and call tips have data.
  • Ensure translation files are distributed.


  • Pip installable.
  • Updated theme handling: day, night and high-contrast (as per user feedback).
  • Keyboard shortcuts.


  • Added modes to allow Mu to be a general Python editor. (Python3, Adafruit and micro:bit.)
  • Added simple visual debugger.
  • Added iPython based REPL for Python3 mode.
  • Many minor UI changes based on UX feedback.
  • Many bug fixes.


  • Add ability to change default Python directory in the settings file. Thanks to Zander Brown for the contribution. See #179.


  • Change the default Python directory from ~/python to ~/mu_code. This fixes issue #126.
  • Add instructions for installing PyQt5 and QScintilla on Mac OS.
  • Update to latest version of uFlash.
  • Add highlighting of search mathes.
  • Check if the script produced is > 8k.
  • Use a settings file local to the Mu executable if available.
  • Fix bug with highlighting code errors in Windows.
  • Check to overwrite an existing file on the micro:bit FS.
  • Start changelog

Release historyRelease notifications RSS feed

1.1.0b4 pre-release

1.1.0b3 pre-release

1.1.0b2 pre-release




Mu Python Turtle


Mu Python Download Mac

1.0.0rc1 pre-release

1.0.0b17 pre-release

1.0.0b16 pre-release

1.0.0b15 pre-release

1.0.0b14 pre-release


1.0.0b13 pre-release

1.0.0b12 pre-release

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for mu-editor, version 1.0.3
Filename, sizeFile typePython versionUpload dateHashes
Filename, size mu_editor-1.0.3-py3-none-any.whl (2.0 MB) File type Wheel Python version py3 Upload dateHashes
Filename, size mu-editor-1.0.3.tar.gz (1.9 MB) File type Source Python version None Upload dateHashes

Mu App Python


Hashes for mu_editor-1.0.3-py3-none-any.whl

Hashes for mu_editor-1.0.3-py3-none-any.whl
AlgorithmHash digest

Mu Python Coding


Hashes for mu-editor-1.0.3.tar.gz

Hashes for mu-editor-1.0.3.tar.gz
AlgorithmHash digest