#!/usr/bin/python
Specify what interpreter to use to run the script and where the interpreter is located
#-*-Coding:utf-8-*-
Used to specify that the file is encoded as Utf-8.
PEP 0263--defining Python Source Code encodings
http://www.python.org/dev/peps/pep-0263/
It's an estimated that a lot of people have noticed that some Python scripts have this line at the beginning:
#!/usr/bin/python
What does it do for you? It doesn't seem to have any effect on the scripting function. It is used to specify what interpreter to run the script and where the interpreter is located.
Take test.py as an example, the script reads as follows:
def test ():
print ' Hello, world '
if __name__ = = "__main__":
Test ()
To run the script:
Python test.py
Output:
Hello, world
To run in a different way:
./test.py
An error is indicated and the file has no executable permission:
-bash:./test.py:permission denied
To set a file as executable:
chmod +x test.py
Continue running:
./test.py
Tips:
./test.py:line 1:syntax error near unexpected token ' ('
./test.py:line 1: ' Def Test (): '
That's because the system defaults to the script as a shell script that executes it when the shell statement, of course, fails.
Add in front
#!/usr/bin/python
Declare l This is a Python script to run with the Python interpreter:
./test.py
Output:
Hello, world
This stuff is commonly used in CGI scripts, where Apache launches CGI scripts to know that this is a Python script and where to execute the Python interpreter path it needs.
Sometimes writing #!/usr/bin/python or not, very simple, because the Python interpreter is not installed in the/usr/bin/directory, change to its directory is OK, or more general method is:
#!/usr/bin/env python
Python #!/usr/bin/python effect