如何在Python中实现制表符完成?
我试图在Python中使用getopt模块,在这里我定义了一个参数-p,在运行脚本时由用户添加。这是剧本如何在Python中实现制表符完成?,python,python-2.7,tabs,Python,Python 2.7,Tabs,我试图在Python中使用getopt模块,在这里我定义了一个参数-p,在运行脚本时由用户添加。这是剧本 def usage(): print "Usage: " print "my.py -p <path to file>" try: options, remainder=getopt.getopt(sys.argv[1:], 'p:h') except getopt.GetoptError as err: print str(err)
def usage():
print "Usage: "
print "my.py -p <path to file>"
try:
options, remainder=getopt.getopt(sys.argv[1:], 'p:h')
except getopt.GetoptError as err:
print str(err)
usage()
sys.exit()
for opt, arg in options:
if opt in ('-p'):
file_path=arg
if opt in ('-h'):
usage()
sys.exit()
现在的问题是,当我尝试运行脚本时,我需要cpy并粘贴路径,因为标准制表符完成不起作用。如何为我的脚本实现相同的功能
我在谷歌上搜索了python中的os模块函数,但没有找到 如果我理解正确,您指的是您正在使用的shell中的制表符完成。是的,就像我开始在参数-p中键入路径时,说/home,然后按tab,它应该变成/home/charts\u test(就像在shell或linux中一样)。我在linux中运行脚本,这不是python的问题,因为python进程甚至没有运行;你只是在壳中形成命令。没有模块可以帮助您。查看shell的完成工具以及如何配置它们。另外,请看一下模块。它比
getopt
更好,并且提供免费的用法打印输出等。你是对的,我刚刚检查了它的工作原理。奇怪的是昨天它不工作。这听起来很奇怪,但我不知道到底发生了什么。谢谢你的及时回复。
my.py -p /home/charts_test