Python 3.4 on Sublime Text 3

I followed these steps to run Python 3 on Sublime Text 3.

Select the menu Tools > Build > New Build System and I entered the following:

{
"cmd": ["python3", "$file"]
, "selector": "source.python"
, "file_regex": "file \"(...*?)\", line ([0-9]+)"
}

After that, I saved it to the following (Mac-specific) directory: ~/Library/Application Support/Sublime Text 3/Packages/User

but I'm getting this error when I'm trying to run my code on Python 3 in Sublime:

[Errno 2] No such file or directory: 'python3'

Solution 1:

You need to provide the full path to python3, since Sublime Text does not read your ~/.bash_profile file. Open up Terminal, type which python3, and use that full path:

{
  "cmd": ["path/to/python3", "$file"], 
  "selector": "source.python", 
  "file_regex": "file \"(...*?)\", line ([0-9]+)"
}

Solution 2:

This is the snippet that I've been using. It's a slight variation to Andrew's solution, such that python3 is dynamically located by consulting the UNIX environment's PATH setting (not unlike how you would do the same inside a Python shell script; e.g.: '#! /usr/bin/env python3').

This snippet also uses "shell_cmd" instead of "cmd", which sublime-text-3 has seemingly switched to.

{
    "shell_cmd": "/usr/bin/env python3 ${file}",
    "selector": "source.python",
    "file_regex": "^(...*?):([0-9]*):?([0-9]*)",
    "working_dir": "${file_path}",
}

I saved mine in ".../Packages/User/Python3.sublime-build". I hope this helps you. =:)