如何在python 3.3中为命令创建快捷方式

时间:2013-07-02 06:11:14

标签: python python-3.x

我刚开始学习python,并想知道它们是否是一种快捷方式的代码。 例如,我可以使用类似的东西。

command = input()
if command = "create turtle"
    t =turtle.Pen()

turtleCommand = input()
if turtleCommand = "circle"
    t.forward(100)
    t.left(91)

如果一个字符串“输入”(如果是一个单词)激活了一个defineFunction,那么乌龟的事情就是假设的

3 个答案:

答案 0 :(得分:1)

你可以写一个函数:

def draw_circle(t):
    t.forward(100)
    t.left(91)

然后叫它:

t = turtle.Pen()
command = input()

if command == "circle":
    draw_circle(t)
elif command = "stuff":
    ...

更强大的解决方案是使用将命令映射到函数的字典:

commands = {
    "circle": draw_circle,
    "square": draw_square
}

然后按名称获取一个函数:

t = turtle.Pen()
turtle_command = input()
command = commands[turtle_command]

command(t)

答案 1 :(得分:1)

def docircle(pen):
  pen.forward(100)
  pen.left(91)

commands = {
  'circle': docircle,
   ...
}

...

commands[turtleCommand](t)

答案 2 :(得分:1)

您可以设置一个词典,将单词映射到您希望单词激活的功能:

commands = {'create turtle': create_turtle,
            'circle': circle, }

def create_turtle():
    t = turtle.Pen()

def draw_circle():
    ...

然后:

command = input()
commands[command]()