Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trialLuis Barahona
4,529 Points./diary.py - Nothing happens, in fact it says there is an error. Any help?
terminal question. I can't seem to follow along when it comes to enter inputs on the terminal window. What am I missing?
3 Answers
Jeff Muday
Treehouse Moderator 28,720 PointsNot sure if this is your issue, but there is a bit of difference between Python 2.7.x and Python 3.x in terms of console input.
On Python 2.7.x:
name = raw_input("What is your name: ")
On Python 3.x
name = input("What is your name: ")
Luis Barahona
4,529 PointsHi Steven and Jeff, when i go to the console/workspace and type ./diary.py I get back /usr/bin/env: 'python3\r': No such file or directory
Jeff Muday
Treehouse Moderator 28,720 PointsTreehouse workspaces are set up for Python3 by default now. You probably know some of this stuff below already, so if I am misinterpreting your question, I apologize in advance!
If you just want to run the code (and it is in your current directory), then type
$ python diary.py
Running as a script -- is OPTIONAL, but nice to know.
Linux and MacOSX terminal environments can vary quite a bit. On some Python 2.x is default, on others Python 3.x is default. So you will have to know a little about the local environment to get this working correctly.
This doesn't apply to Windows, as Python is not "native"... but easily installed at least.
If you want to run the file directly, you have to have a "shebang" and the absolute path to the python executable on the first line of the program. You also have to the execute flag set.
To find the python version and location:
treehouse:~/workspace$ python --version
Python 3.6.4
treehouse:~/workspace$ which python
/usr/local/bin/python
The first line of your program MUST be this
#!/usr/local/bin/python
By default, a Python file created in a workspace is not set to be executable and then you have to change the execute flag on it:
note when I list the diary file, initially, its mask is set -rw-r--r--
I use the "chmod" program with +x argument
and the ready-to-run file mask is set -rwx-r-xr-x
treehouse:~/workspace$ ls -la diary.py
-rw-r--r--. 1 treehouse users 47 May 20 17:10 diary.py
treehouse:~/workspace$ chmod +x diary.py
treehouse:~/workspace$ ls -la diary.py
-rwxr-xr-x. 1 treehouse users 47 May 20 17:10 diary.py
Now you should be able to run the program directly:
$ ./diary.py
I hope this helps!
Steven Parker
231,272 PointsSteven Parker
231,272 PointsYou'll need to show your code so we can take a look. Use Markdown formatting when pasting in code, or share the entire workspace by making a snapshot and posting the link to it.