Learn How To Improve Raspberry Pi Memory Usage @Raspberry_pi #piday #raspberrypi
Learn how to improve the memory usage on your raspberry pi, from linuxuser:
Last month, we started with a quick look at Python objects, including an introduction to creating your own. One thing that we only saw in passing was just how ubiquitous objects are in Python. Pretty much everything in Python is an object. If you have gigabytes of memory, how these objects get stored is not a major issue. On a Raspberry Pi, however, you are limited. This month, we will look at how Python stores and references objects. We will also look at some code that you can use to interrogate your own code to see what is happening with RAM usage.
The first thing to realise is that everything in Python is an object, of one type or another. You can find out the type of an object with the command type(). If you were to create a list of integers with the command a=[1,2,3], running the command type(a) would return that list. But it goes even further than that. What happens if you run the command type(1)? Does the integer 1 have a type? In this case, you will get the result ‘integer’. This makes sense. But it goes even further. The integer 1 is actually an object. Integer objects have a function named bit_length(), which gives the number of digits needed to represent this integer in binary. If you have num1=1, you can find the bit length with num1.bit_length(). But the interesting thing is that, since the integer 1 is an object, you can also execute (1).bit_length(). This is very different behaviour from most other programming languages.
Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on code.org, jump into CircuitPython to learn Python and hardware together, TinyGO, or even use the Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for CircuitPython, MakeCode, and Arduino. It has a powerful processor, 10 NeoPixels, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.