Difference between revisions of "Python"
Jump to navigation
Jump to search
m (→Modules) |
|||
Line 9: | Line 9: | ||
;import sys | ;import sys | ||
− | : | + | :Provides a number of system variables |
:sys.argv | :sys.argv |
Revision as of 11:31, 11 October 2018
Generic things:
The Python style guide is described in [PEP 8]
Modules
To add the location of your own modules to the python search path put it in the PYTHONPATH variable.
- import sys
- Provides a number of system variables
- sys.argv
- List of everything on the commandline. sys.argv[0] is the program itself.
- import getopt
- Module to parse the commandline arguments (sys.argv). Default available
- import subprocess
- Module to execute shell commands
In python2
import subprocess
exitcode = subprocess.call("<any command>")
commandoutput = subprocess.check_output("<any command>")
Use ("command",shell=True) to have the call work like it would on the commandline
In python3
import subprocess
CompletedProcess = subprocess.run("<any command>")
The CompletedProcess returned has (args, returncode, stdout, stderr)
Variables
Variables are always pointers to objects.
a = 2
b = 2
Point to the same object (the immutable integer '2')
Variables are local by default. If a routine has any assignment to a variable it is local. If you have defined a variable outside a routine and need assignments to it in the routine you have to declare it global explicitly. Variables are always pointers to objects.
a = 'a string'
def main():
global a
print(a)
a = "This would fail with 'local variable 'a' referenced before assignment' if 'a' was not declared as global"
main()
[Geeks for Geeks] has as good page about this.