python - tornado中使用parse_command_line(final=False) 沒能理解final是做什么的
問題描述
大概知道parse_command_line是用來解析命令行的,但是不理解里面的final參數是作什么的。順便咨詢一下學習tonardo的學習資源(知道官方文檔是最好的)和書籍
問題解答
回答1:通過這樣,找到源代碼,請自己看方法文檔
If final is False, parse callbacks will not be run.
This is useful for applications that wish to combine configurationsfrom multiple sources.
def parse_command_line(self, args=None, final=True):'''Parses all options given on the command line (defaults to`sys.argv`).Note that ``args[0]`` is ignored since it is the program namein `sys.argv`.We return a list of all arguments that are not parsed as options.If ``final`` is ``False``, parse callbacks will not be run.This is useful for applications that wish to combine configurationsfrom multiple sources.'''if args is None: args = sys.argvremaining = []for i in range(1, len(args)): # All things after the last option are command line arguments if not args[i].startswith('-'):remaining = args[i:]break if args[i] == '--':remaining = args[i + 1:]break arg = args[i].lstrip('-') name, equals, value = arg.partition('=') name = self._normalize_name(name) if name not in self._options:self.print_help()raise Error(’Unrecognized command line option: %r’ % name) option = self._options[name] if not equals:if option.type == bool: value = 'true'else: raise Error(’Option %r requires a value’ % name) option.parse(value)if final: self.run_parse_callbacks()return remaining
相關文章:
1. angular.js - 輸入郵箱地址之后, 如何使其自動在末尾添加分號?2. javascript - JS 里面的 delete object.key 到底刪除了什么?3. mysql - 電商如何存儲營業額數據4. javascript - 后臺管理系統左側折疊導航欄數據較多,怎么樣直接通過搜索去定位到具體某一個菜單項位置,并展開當前菜單5. 管理員信息修改時的密碼問題6. android - RxJava 中有根據條件執行不同函數的操作符嗎?7. javascript - html5的data屬性怎么指定一個function函數呢?8. java如何生成token?9. javascript - 如何使用nodejs 將.html 文件轉化成canvas10. html5 - 為什么使使用vue cli 腳手架,post-css 沒有自動對css3屬性自動添加瀏覽器前綴呢?
