发布时间:2019-08-10 09:21:06编辑:auto阅读(1889)
#!/usr/bin/python
# Filename: using_sys.py
import
sys
print
'The command line
arguments are:'
for
i
in
sys
.argv:
print
i
print
'\n\nThe PYTHONPATH
is'
,
sys
.path,
'\n'
import
语句 输入 sys
模块。基本上,这句语
句告诉Python,我们想要使用这个模块。sys
模块包含了与Python解释器和它的环境有关的函数。import sys
语句的时候,它在sys.path
变量中所列目录中
寻找sys.py
模块。如果找到了这个文件,这个模块的主块中的语句将被运行,然后这个模块将能够被你 使用
。注意,初始化过程仅在我们 第一次 输入模块的时候进行。另外,“sys”是“system”的缩写。sys
模块中的argv
变量通过使用点号指明——sys.argv
——
这种方法的一个优势是这个名称不会与任何在你的程序中使用的argv
变量冲突。另外,它也清晰地表明了这个名称是sys
模
块的一部分。python using_sys.py we are arguments
的时候,我们使用python命
令运行using_sys.py
模块,后面跟着的内容被作为参数传递给程序。Python为我们把它存储在sys.argv
变
量中。sys.argv
列表的第一个参数。所以,在这里,'using_sys.py'
是sys.argv[0]
、'we'
是sys.argv[1]
、'are'
是sys.argv[2]
以
及'arguments'
是sys.argv[3]
。注意,Python从0开始计数,而非从1开
始。sys.path
包含输入模块的目录名列表。我们可以观察到sys.path
的第一个字符串
是空的——这个空的字符串表示当前目录也是sys.path
的一部分,这与PYTHONPATH
环
境变量是相同的。这意味着你可以直接输入位于当前目录的模块。否则,你得把你的模块放在sys.path
所列的目录之一。argv
变量到你的程序中(避免在每次使用它时打sys.
),那么你可以
使用from sys import argv
语句。如果你想要输入所有sys
模块使用的名字,那
么你可以使用from sys import *
语句。这对于所有模块都适用。一般说来,应该避免使用from..import
而
使用import
语句,因为这样可以使你的程序更加易读,也可以避免名称的冲突。#!/usr/bin/python
# Filename: using_name.py
if
__name__ ==
'__main__'
:
print
'This program is
being run by itself'
else
:
print
'I am being
imported from another module'
#!/usr/bin/python
# Filename: mymodule.py
def
sayhi
():
print
'Hi, this is
mymodule speaking.'
version =
'0.1'
# End of mymodule.py
sys.path
所列目录之一。#!/usr/bin/python
# Filename: mymodule_demo.py
import
mymodule
mymodule.sayhi()
print
'Version'
,
mymodule.version
from..import
语法的版本。#!/usr/bin/python
# Filename: mymodule_demo2.py
from
mymodule
import
sayhi, version
# Alternative:
# from mymodule import *
sayhi()
print
'Version'
,
version
dir
函数来列出模块定义的标识符。标识符有函数、类和变量。
$ python
>>> import sys
>>> dir(sys) # get list of attributes for sys module
OK,Chapter 8 is over, next time I will learn next Chapter
http://linux.chinaitlab.com/manual/Python_chinese/ch09.html,Good luck!!!!!
上一篇: Python处理JSON
下一篇: python 自动补全
48879
47949
38729
35871
30294
27055
26080
20912
20722
19081
536°
624°
625°
634°
606°
587°
660°
728°
852°
965°