请问sys.argv[-1]#命令行最后一个参数是什么意思
玛拉的哲学 2019-03-15 06:12:10 import bisect
import sys
HAYSTACK = [1,4,5,6,8,12,15,20,21,23,23,26,29,30]
NOODELS = [0,1,2,3,5,8,10,22,2,3,29,30,31]
ROW_FMT = '{0:2d} @ {1:2d} {2}{0:<2d}'
def demo(bisect_fin):
for needle in reversed(NOODELS):
position = bisect_fin(HAYSTACK,needle)
offset = position * ' |'
print(ROW_FMT.format(needle,position,offset))
if __name__ == '__main__':
if sys.argv[-1] == 'left':
bisect_fn = bisect.bisect_left
else:
bisect_fn = bisect.bisect
print('DEMO:',bisect_fn.__name__)
print('haystack ->',' '.join('%2d' % n for n in HAYSTACK))
demo(bisect_fn)
这是流畅的python里面的代码,我标红的那一行,书上的注释是根据命令上最后一个参数来选用bisect函数,但是bisect函数不是只能从程序外部获取参数吗,他是从哪里获取的left参数吗,救救孩子吧。