3

I want to run a Python 3 script.

I have looked in the official doc and FAQ, and they are the typical loss. I was looking for answers, I ended up with more questions.

I have Windows and Linux. On Windows, I don't have Python. On Linux, I have Python, but it is Python 2.6.8. I have tried to run my script with this Python, but this gives an error.

I want something simple : a Python 3 that I would put somewhere in my disk and that I would use to run my script. Where can I find this ?

I am looking for a solution for Windows or Linux.

Thank you.

Nicolas Barbulesco
  • 401
  • 4
  • 8
  • 16
  • 1
    Are you sure you do not have python3 installed on your linux box ? Several distros ship it but it is not the default python used to run scripts. – NaeiKinDus Jan 06 '15 at 11:02
  • @NaeiKinDus - No, I am not sure. I have tried the command `python3` but the command is not found. – Nicolas Barbulesco Jan 06 '15 at 11:10
  • 1
    you could try the following project for linux: https://code.google.com/p/pts-mini-gpl/wiki/StaticPython You can directly download the Python binary and run it without having to install it on your system. – NaeiKinDus Jan 06 '15 at 12:58
  • @NaeiKinDus - I have already managed to use the Portable Python suggested by Karel. But StaticPython is good to know. – Nicolas Barbulesco Jan 06 '15 at 13:09

4 Answers4

3

You have registered for Ask Ubuntu Q&A, so I'll provide the command for Ubuntu. In Ubuntu open the terminal and type:

sudo apt install python3 idle3 ipython3 

python3 is already installed by default in Ubuntu, I have added python3 to the command for the sake of generality with other Linux distributions. IDLE 3 is an Integrated Development Environment for Python 3. Open IDLE 3 and then open your Python script from the menu in IDLE 3 -> File -> Open.

In Windows IDLE 3 is bundled with the Python 3 installation file, and the instructions for opening a Python 3 script in IDLE 3 are the same.

Try both Idle and IPython and see which one you like. I prefer IPython because it's easier to use than Idle. IPython also runs inside Spyder IDE which is convenient for displaying plots and charts inline in the same pane as the code.

You can also install Python 3 in Windows as a portable app. Portable Python is pre-configured to run directly on the Windows OS from any USB storage device, enabling you to have, at any time, a portable programming environment. Portable Python is available for both Python 2 and Python 3. The download options for Portable Python offer you a choice of downloading optional additional Python packages for scientific computing, etc. The installed size of Portable Python (Python 3), based on the selected packages, is between 63MB and 260MB.

karel
  • 12,979
  • 25
  • 41
  • 49
  • On Windows, I did not succeed with the Python 3 installer. It asks me for admin auth, even when I choose to install "just for me". – Nicolas Barbulesco Jan 06 '15 at 11:27
  • On Linux, I don't want to run this kind of command. I have an integration server, and I don't want to install anything in the system. I want to have and use Python 3 in a folder. – Nicolas Barbulesco Jan 06 '15 at 11:31
  • Portable Python is pre-configured to run directly on the Windows OS from any USB storage device, enabling you to have, at any time, a portable programming environment. There is a way to run Python scripts as a regular user without administrative privileges in both Windows and Linux by running the scripts from the Python virtual environment creator (*virtualenv*). Using virtualenv will improve security when running untrusted Python scripts. You can also install Python 3 itself inside a virtualenv Python virtual environment. However you still need administrative privileges to install virtualenv. – karel Jan 06 '15 at 11:34
  • 2
    [Portable Python](http://portablepython.com/) for Python 3 is currently at version 3.2.5.1. – karel Jan 06 '15 at 11:37
  • Karel, I understand that Portable Python and *virtualenv* are two different things. I am interested in Portable Python ! – Nicolas Barbulesco Jan 06 '15 at 11:39
  • The Portable Python works fine ! Not enough user-friendly to my taste, but I managed to make it run my script. – Nicolas Barbulesco Jan 06 '15 at 12:59
2

On many systems, "python" defaults to "python2", but you can run a script under python 3 simply by doing

python3 myscript.py

Issuing

which python3

will tell you if that's going to work.

Also, if the script includes an appropriate shebang,

./myscript.py

is supposed to work...

Nemo
  • 1,114
  • 1
  • 12
  • 29
1

For Windows:

  1. You need to install Python 3 from here
  2. Follow the setup instructions, making sure to check the box that says whether to add it to the system PATH variable
  3. Go into cmd, cd to the location of the script, and type python script.py, replacing script with your filename or open the script with Python Launcher which will have been installed via the installer

To make the script, you can use Python IDLE which was also installed.

ᔕᖺᘎᕊ
  • 6,033
  • 4
  • 31
  • 45
  • This link does not give *Python 3*, it gives *an installer*, *.msi*. Coming from the Mac, I am not fond of *installing* programs. Anyway, I have (re-)tried the installer, to no avail. Even when I choose to install "just for me", the installer asks me for admin auth, and it fails. Why can't those people just provide a Zip file ? – Nicolas Barbulesco Jan 06 '15 at 11:41
  • @NicolasBarbulesco So you want to *run* python without installing? Like a portable version?? – ᔕᖺᘎᕊ Jan 06 '15 at 11:43
  • Yes ! I am looking into @karel's solution. – Nicolas Barbulesco Jan 06 '15 at 11:45
  • 1
    OK, I didn't see @karel's comments - I agree about using Portable Python, it works fine on a USB for me :) – ᔕᖺᘎᕊ Jan 06 '15 at 11:46
-1

There is a difference from Linux to Windows. On Linux you would type like this:

python3 script.py

While on Windows (once you have Python installed) chances are you would type:

py -3 script.py

Comparing to py -2 script.py that would run Python 2.


Note: On Windows python or python.exe would call the latest version of Python you have installed.

prosti
  • 109
  • 4
  • 1
    Huh, aren't the Windows binaries called `python.exe`? Where did you get `py` from? – slhck Jan 11 '19 at 12:58
  • I don't care, I just use it with `py` when I need to specify the version, but `python` or `python.exe` still works. – prosti Jan 11 '19 at 15:48
  • So it's not really required. That said, this seems to be a new feature with version 3.6: https://docs.python.org/3/using/windows.html – slhck Jan 11 '19 at 21:21