Previously, I have been running Python in Spyder. I always started Spyder by directly double clicking its icon.
Today, I suddenly realize that I have another thing called Python(x,y). I notice that I can also start Spyder through it.
Do these two methods make any difference?
If not, what is the meaning of Python(x,y)? Does it have any other good features?
Python(x,y)
Python(x,y) is a scientific Python distribution. This means that it not only installs Python in your system but also the most important scientific packages needed for a scientist to be productive with the language.
These packages are difficult to install by the user and also are too many to be installed one by one, so that's why Python(x,y) offers the possibility to install them all at once.
Spyder
Spyder is one of the packages distributed by Python(x,y), which offers a simple and convenient graphical environment to use the other scientific packages (like numpy or matplotlib). It resembles Matlab in its design.
Perhaps a comparison to Matlab is worth here:
Matlab is a huge program (about 5 gigs) that it's developed by one company and comes with a lot of packages and a graphical interface to use it.
Python(x,y) is also a big program (about 1 gig) but it's developed by two individuals who collect a lot of open source programs developed by a lot of different groups and institutions. It also comes with a graphical interface (Spyder) but there are others that fulfill a similar purpose (like the IPython notebook).
So in the Python scientific world, every package is developed independently of each other and there is the need of a "meta" program (like Python(x,y)) that distributes them together.
Actually i did not use spyder alone, but when you open it through Python(x,y) which is a scientific oriented distribution, some packages that are used in scientific/numeric computing automatically loaded.
Python(x,y) is based on python, Qt, spyder and includes many tools for scientific/numeric computation, visualizing (2D-3D), etc.
https://code.google.com/p/pythonxy/
Related
I have a question which arises pretty much instantly after reading all the basics about environments in python. However, I was not able to find anything on the internet.
Let’s say I have an Anaconda installation and everything works fine. Everybody knows there are many many python distributions out there. Let’s assume, I want to play with some specific distribution (lets say, I am interested in CPython which can be downloaded from python.org). And: I want to have it in an environment isolated from other distributions. Like this:
Base-Environment: Conda – Environment
Environment1: CPython
Environment2: Miniconda-distribution
Environment3: Some other distribution and so on…
I want the Environment1 to be created on the basis of files published by the Python Software Foundation (python.org). Similar applies for other environments.
Can I achieve that using conda? Can I achieve that for some specific distributions only? How can I achieve that using conda? Can someone write a comprehensive answer?
I have a python script that I use to analyze data. I rely on number crunching packages like numpy and others to work with my data. However, the packages constantly evolve and some functions depreciate, etc. This forces me to go through the script several times per year to fix errors and make it work again.
One of the solutions is to keep an older version of numpy. However, there are other packages that require a new version of numpy.
So the question I have is: Is there a way to 1) keep multiple versions of a package installed or 2) have a local copy the package located in the directory of my script so I am in control what I am importing. For example, I can have my own package where I will have all the different packages and versions I need.
Later, I can simply import libraries I want
from my_package.numpy_1_15 as np115
from my_package.numpy_1_16_4 as np1164
and later in my code, I can decide which function to use from which numpy version. For example:
index = np115.argwhere(x == 0)
This is my vision of the solution to my problem where I want to keep using old functions from previous versions of numpy (or other libraries). In addition, in this way, I can always have all the libraries needed with me in my script directory. So, if I need to run the script on a different machine I don't need to spend hours figuring out if everything is compatible.
Here are possible proposed solutions and why they do not solve my problem.
Virtual Environments in Python or Anaconda.
There are a bunch of introductions (for example) available that explain how to use them. However, virtual environments require maintenance and initial setup. Imagine, if I can just have a python code that performs well a specific computational task independent on what year it is and what packages are installed on any machine. The code can be shared among different research groups and will always work.
python create standalone executable linux
I can create standalone executable (example). However, it will be compiled and cannot be dynamically changed the really nice feature of Python
I take some online courses on Udemy and one of the instructors use Anaconda and Jupiter notebook, another one use Atom.
I have no programming background so please explain to me the commons and differences between them.
Anaconda is a way to distribute Python, where Jupyter and Atom are ways to interact with a python interpreter. Atom is a traditional text editor used to just write python code, and Jupyter is a lot more complicated, it's more of a toolkit revolving around math, science, and big data, and allows you to write/run python/julia/r/scala/etc scripts.
I need an editor with python built into it. Currently I use blender so I do not have install python. Blender comes with the python32.dll to use python. is there another editor out there that I can execute python commands without it being installed?
I don't understand the question fully either. Why NOT install python? But if the question is how to be able to edit and run python on machines without installing it, there's Movable Python (http://www.voidspace.org.uk/python/movpy/) with a small fee to purchase and Portable Python (http://www.portablepython.com/wiki/About), free, donation requested. I've used Movable Python and can vouch for it. I've never tried Portable Python.
ViennaMike referenced Movable Python which has a small fee, after I had asked the question, I did more searching and found movable python about the same time he suggested it. I seems to find something different.
http://code.google.com/p/movable-python/
this seems to be a free version of movable python. This is only the IDLE portion of python, but can be used to run *.py files. It is considerably smaller than a normal python installation, and comes in a zip file.
Several people asked about my ability to install an editor but not python. At my High school (I work with the IT dept as one of my classes) I find python helps a lot with some tasks. I am unable to install python due to admin rights (which I will have next year) so anytime I did install python, because of its size on the Network drive, it would be automatically deleted.
Thank you ViennaMike again for finding movable python, unfortunately, it only works with python 2.5, so I may see if there is a way I can get that to 3.2
For quite some time now, I've been fighting in vain to get a software I'm working on to work under Windows. It's written in Python (the 2.x series), and although all Linux users can benefit from its GUI when they use the source package, it seems that many people who download it go for the Windows package, for which I've only been able to provide command-line binaries.
The GUI was built using Glade/GTK, and uses poppler to embed a PDF viewer. I've found various howto's in the past (I don't have them at hand right now, sorry), which I've tried to follow religiously, but I never got things to work at all.
So, is there a reliable tutorial explaining exactly how to install the needed libraries (GTK and Poppler), so that I can build the corresponding binaries for my users?
There is a window installer here: http://download.gnome.org/binaries/win32/pygtk/2.22/