我想创建类,这对于用户界面是通用的。我希望有某种形式的列表,可以更改另一个程序,以实现用户的不同选项。
我想在列表中使用诸如self.force之类的类变量,但我不知道如何像使用变量self.force而不是list的自变量(self.option_list [0] [ 0])。
此代码将不起作用,因为我不知道如何解决此问题。它只是一种方式,我想如何解决通用接口的问题。如果您使用更好的方式来处理sys.argv,我欢迎您提出建议。
import sys
class UserInterface:
def __init__(self):
self.option_list = [
#[var, usr_name, def_val, choose_val]
[self.force, '-f', False, True]
[self.main_path, '-m', os.getcwd(), '-NEXT_ARG']
[self.send_to_Kindle_dir_name, '-s',
self.main_path+os.sep+'send_to_kindle', '-NEXT_ARG']
[self.display_info, '-p', False, True]
[self.display_help, '--help', False, True]
]
for i in self.option_list:
i[0] = i[2]
for i in range(len(sys.argv)):
for j in self.option_list:
if sys.argv[i] == j[1]:
if j[3] == '-NEXT_ARG':
if len(sys.argv)>i+1:
j[0] = sys.argv[i+1]
else:
j[0] = sys.argv[i]