以更简单的方式调用不同的函数

时间:2015-08-18 16:59:23

标签: python loops for-loop

我对编程很新,目前正在创建一个具有许多不同功能的程序。目前,用户必须在没有功能括号的情况下输入命令,例如“时间”或“帮助”。我希望它保持这种状态。

但我的代码效率非常低:

x=input()
if x=='time':
    time()
elif x=='date':
    date()

目前它似乎很短暂,但我计划有很多功能。有没有办法制作一个完成所有这一切的循环?

1 个答案:

答案 0 :(得分:2)

将所有函数保留在列表中,并使用for循环遍历列表。

在你的例子中:

def time():
      print "this is time function"
def date():
      print "this is date function"
list1 = [date, time]
x = raw_input()
for foo in list1:
  if foo.__name__ == x:
       foo()

输出:

$ python new1.txt 
date
this is date function
$ python new1.txt 
time
this is time function