python调用函数与参数作为字典中的用户输入?

时间:2014-02-25 11:00:24

标签: python function dictionary arguments

我有一本字典

d={}

用户输入

no=raw_input("Enter number: ")
x=raw_input("Enter string: ")
y=raw_input("Enter string: ")
z=raw_input("Enter string: ")



d[no]=send(x,y,z)

def send(x,y,z):
    print x,y,z

这可能吗?

我试过但是当我打印字典时,它会输出

{1: None}

我想输出类似这样的东西

 d{
    1:send(x,y,z),
    2:send(x,y,z),
    3:send(x,y,z)
  }

其中x,y,z是用户输入。

3 个答案:

答案 0 :(得分:1)

您的send功能没有意义。你可以这样做:

d[no] = (x,y,z)

如果你想分配并打印到控制台,那么我猜你可以:

d[no] = send(x,y,z)

def send(x,y,z):
    print x,y,z
    return x,y,z

但这很奇怪。

答案 1 :(得分:1)

使用return代替print

def send(x,y,z):
    return x, y, z

你会得到:

d = {
    1: (x, y, z)
    2: (x, y, z)
    3: (x, y, z)
}

如果您真的希望在字典中看到"send(x, y, z)",请使用:

def send(x,y,z):
    return "send({0}, {1}, {2})".format(x, y, z)

答案 2 :(得分:0)

只需返回值而不是打印它。

def send(x, y, z):
    return x, y, z