SYS module features many, we introduce some of the more practical features, I believe you will like, and I went into the Python module it!
A list of common functions of the SYS module
sys.argv
: Implements passing parameters to the program from outside the program.
sys.exit([arg])
: Exit in the middle of the program, arg=0 for normal exit.
sys.getdefaultencoding()
: Gets the current encoding of the system, which is generally ASCII by default.
sys.setdefaultencoding()
: Set system default encoding, do not see this method when executing dir (SYS), do not pass in interpreter, can execute reload (SYS), execute setdefaultencoding (' UTF8 ') at this time, set system default encoding to UTF8. (See Set system default encoding)
sys.getfilesystemencoding()
: Get file system using encoding method, return ' MBCS ' under Windows, Mac return ' Utf-8 '.
sys.path
: Gets a collection of strings for the specified module's search path, which can be placed in a given path, and can be found correctly when import is in the program.
sys.platform
: Gets the current system platform.
sys.stdin,sys.stdout,sys.stderr
: stdin, stdout, and stderr variables contain stream objects that correspond to standard I/O streams. If you need more control over the output, and print does not meet your requirements, they are what you need. You can also replace them, so you can redirect output and input to other devices, or handle them in a non-standard way
sys.argv
Function: Pass parameters externally to the program
Example:sys.py
#!/usr/bin/env pythonimport sysprint sys.argv[0]print sys.argv[1]
Run:
python sys.py argv1sys.pyargv1
Try it yourself, understand the parameters corresponding to the relationship
Sys.exit (N)
Function: Executes to the end of the main program, the interpreter automatically exits, but if you need to exit the program halfway, you can call the Sys.exit function, with an optional integer parameter returned to the program that called it, indicating that you can capture the call to Sys.exit in the main program. (0 is normal exit, others are abnormal)
Example:exit.py
#!/usr/bin/env pythonimport sysdef exitfunc(value): print value sys.exit(0)print "hello"try: sys.exit(1)except SystemExit,value: exitfunc(value)print "come?"
Run:
# python exit.pyhello1
Sys.path
Function: Gets a collection of strings for the specified module search path, which can be placed in a given path, and can be found correctly when import is in the program.
Example:
>>> import sys>>> sys.path[‘‘, ‘/usr/lib/python2.7‘, ‘/usr/lib/python2.7/plat-x86_64-linux-gnu‘, ‘/usr/lib/python2.7/lib-tk‘, ‘/usr/lib/python2.7/lib-old‘, ‘/usr/lib/python2.7/lib-dynload‘, ‘/usr/local/lib/python2.7/dist-packages‘, ‘/usr/lib/python2.7/dist-packages‘, ‘/usr/lib/python2.7/dist-packages/PILcompat‘, ‘/usr/lib/python2.7/dist-packages/gtk-2.0‘, ‘/usr/lib/python2.7/dist-packages/ubuntu-sso-client‘]
sys.path.append("自定义模块路径")
Sys.modules
Function: sys.modules
is a global dictionary that is loaded in memory when Python is started. Whenever a programmer imports a new module, sys.modules
the module is automatically recorded. When the module is re-imported the second time, Python will look directly into the dictionary, speeding up the program's speed. It has all the methods that the dictionary has.
Example:modules.py
#!/usr/bin/env pythonimport sysprint sys.modules.keys()print sys.modules.values()print sys.modules["os"]
Run:
python modules.py[‘copy_reg‘, ‘sre_compile‘, ‘_sre‘, ‘encodings‘, ‘site‘, ‘__builtin__‘,......
Sys.stdin\stdout\stderr
Features: stdin, stdout, and stderr variables contain stream objects that correspond to standard I/O streams. If you need more control over the output, and print does not meet your requirements, they are what you need. You can also replace them, so you can redirect output and input to other devices, or handle them in a non-standard way
The Python sys module is detailed