这个问题已经在这里有一个答案:
- 我该怎么做简单的用户输入的蟒蛇? [重复] 4个答案
我参加比赛,但不知道如何使蟒蛇取输入。 下面是一个典型例子 。 该网站给出的示例中如何采取输入,但那些正在使用C和Java( 点击这里 )。 请帮我找出如何使Python采取输入在这种情况下。
这个问题已经在这里有一个答案:
我参加比赛,但不知道如何使蟒蛇取输入。 下面是一个典型例子 。 该网站给出的示例中如何采取输入,但那些正在使用C和Java( 点击这里 )。 请帮我找出如何使Python采取输入在这种情况下。
有这样做不止一种方法。
以从intepreter输入
对于Python 2.x中,你可以使用raw_input()
函数:
my_input = raw_input("Please enter an input: ")
#do something with my_input
请注意,输入始终是一个字符串 。 为了获取一个号码,你可以使用内置的int()
函数:
my_input = int(raw_input("Please enter an input: "))
#do something with my_input
作为一个其他的答案中提到,如果输入的是一个浮动,这将抛出一个错误。
还有另一个功能, input
,在Python 2.x版本 然而,在这个版本的Python, input
评估输入,这是一个坏主意。 它不推荐使用它。
对于Python 3.x中,但是,您可以使用input()
函数没有任何问题,因为它是一个替代raw_input
:
my_input = input("Please enter an input: ")
#do something with my_input
服用从命令行参数输入
您也可以通过命令行参数检索您的输入,执行你的脚本是这样的时候:
$ python my_script.py arg1 arg2
该参数将被存储在列表sys.argv
。 sys.argv[0]
是第一个参数, sys.argv[1]
是第二个参数,依此类推。
例:
import sys
my_input = sys.argv[0]
#do something with my_input
看看它的细节在这里该方法适用于这两个版本的Python 3.x和2.x的。
希望这可以帮助!
其中一个方法是: http://docs.python.org/2/library/functions.html#raw_input
对于一些更先进: http://docs.python.org/2/library/cmd.html
您可以使用输入或的raw_input功能。
注: input
是容易出现安全问题,所以使用raw_input
来代替。
例如:
inputString = raw_input()
这将读取输入行并将其存储在inputString
。 如果你想要一个int
,
inputInt = int(raw_input())
要为用户输入的最佳方法是使用raw_input
,这将在用户输入一个字符串。 让我演示一下:
>>> var = raw_input("Enter")
Enter>? happy
>>> var
'happy'
注意上幸福报价的标志,这表示一个字符串。 您可能还注意到, input
,并且是可用于采取用户输入,但这里是一个例子这是一个坏主意:
>>> a = 2
>>> input("Enter")
Enter>? a+1
3
在这里, input
实际上得到评估 ,因为我们已经宣布a
, a + 1 == 3
,我们看到,在我们的控制台会话的输出。 这后来成为一个安全问题(你不会希望用户瞎搞与你的变量),所以对于用户的输入, raw_input
是最好的选择。
既然你得到一个string
从raw_input
,你可以把它转换成任何你喜欢的, 如果它可以转换,例如:
>>> var = raw_input("Enter")
Enter>? 122
>>> var = int(var)
>>> var
122
然而,浮动不会与工作int
:
>>> int('1.223')
Traceback (most recent call last):
File "<console>", line 1, in <module>
ValueError: invalid literal for int() with base 10: '1.223'
您将需要使用float
这里,那么它的工作原理:
>>> float('1.223')
1.223