HighLine是一个用于简化控制台输入和输出的Ruby库。它提供了允许您请求输入和验证输入的方法。在Python中有没有提供类似于它的功能的东西?在
要显示HighLine的功能,请参见以下示例:
require 'highline/import'
input = ask("Yes or no? ") do |q|
q.responses[:not_valid] = "Answer y or n for yes or no"
q.default = 'y'
q.validate = /\A[yn]\Z/i
end
它问“是还是不是?”让用户输入一些东西。只要用户不输入y或n(不区分大小写),它就会打印“是或否的答案y或n”,并允许用户再次键入答案。另外,如果用户按Enter键,则默认为y。最后,完成后,输入将存储在input
中。下面是一个用户第一次输入“EH然后是“y”:
在Python中也有类似的简单方法吗?在
下面的应该对您起到类似的作用,尽管它与Ruby中的询问方式不完全相同。在
你可以这样使用它:
^{pr2}$您可以使用python3模块cliask。该模块受the answer of IT Ninja的启发,修复了some deficiencies in it,并允许通过正则表达式、谓词、元组或列表进行验证。在
获取模块的最简单方法是通过pip安装它(有关其他安装方法,请参阅readme):
然后,您可以通过导入来使用该模块,如下例所示:
^{pr2}$下面是运行示例时会话的外观:
相关问题 更多 >
编程相关推荐