如何使用带输入的函数?

时间:2012-06-11 18:28:27

标签: python function input int

好的,我有一个名为DrawGraph的函数。 这个功能几乎就是我的整个程序。

DrawGraph(x, y, xv, yv, s)

在程序开始时,我想输入这个函数。并输入具体的数字,x,y,xv等......

所以我每次启动程序时都可以输入不同的数字。

最简单的方法甚至最好的方法是什么?我不能指望它太难了。

到目前为止我尝试过:

DrawGraph(x, y, xv, yv, s) = input()

DrawGraph(x, y, xv, yv, s) = input(x, y, xv, yv, s)

input(x, y, xv, yv, s)

......这些都没有奏效.......

只想扔进那里。如果我没有输入但只是

,在程序结束时

DrawGraph(5,5,10,10,60)

它很棒。 当我开始使用输入时,它真的搞砸了

7 个答案:

答案 0 :(得分:4)

你可以这样做:

input()

输入:

DrawGraph(0, 1, 2, 3, 4)

input接受任何python表达式并对其进行求值。这可能成为一个安全漏洞。


更好的方法是使用raw_input()

args = map(float, raw_input().split())
DrawGraph(*args)

该代码接受输入,将其转换为列表,然后将每个项目转换为浮动。

答案 1 :(得分:2)

x, y, xv, yv, s = input()

输入必须采用以下形式:

1,2,3,4,5

x = input()
y = input()
xv = input()
yv = input()
s = input()

此输入的格式为:

1
2
3
4
5

无论哪种方式,您都需要将变量传递给您的函数。

请注意,输入可以将字符串参数作为用户提示,例如:

x = input("Give me x:")

答案 2 :(得分:2)

除非您想要解析来自一个输入的值,否则更容易请求每个值并一次将其保存到变量值,然后调用您的函数。

x = input("Enter x:")
y = input("Enter y:")
xv = input("Enter xv:")
yv = input("Enter yv:")
s = input("Enter s:")

DrawGraph(x, y, xv, yv, s)

这将从用户获取值,然后使用这些值调用函数。

答案 3 :(得分:1)

python here

中有关用户输入的堆栈溢出问题

您可以将值接受为cmd行参数,或使用raw_input获取它们。

答案 4 :(得分:0)

args = [int(i) for i in raw_input().split()]

DrawGraph(*args)

对于Python 3,您只需将raw_input()替换为input()即可。我确信有一个稍微简单的方法(除了旧版input()的潜在危险用法,正如Eric的回答中提到的那样),但我现在有点匆忙而且没有是时候考虑太多了。

答案 5 :(得分:0)

def do_draw_graph():
    x  = int(raw_input("Value for x? "))
    y  = int(raw_input("Value for y? "))
    xv = int(raw_input("Value for xv? "))
    yv = int(raw_input("Value for yv? "))
    s  = int(raw_input("Value for s? "))
    DrawGraph(x, y, xv, yv, s)

在IDLE

中使用turtle模块时起作用

答案 6 :(得分:0)

 raw_input() is renamed to input() in Python3 

  x=int(input("enter x" )) 
  y=int(input("enter y" ))
  xv=int(input("enter xv" ))
  yv=int(input("enter yv" ))
  s=int(input("enter s" ))
  DrawGraph(x,y,xv,yv,s)

 it depends on what type of number are the inputs. if they'r decimals like 1.2 instead of int use float