遗憾的是raw_input没有按照我的需要去做。我想要做的是获取totPrimes =我在提示符下键入的内容。如果我将while count < totPrimes
替换为while count < 50
,则此脚本有效。如果我在提示符下键入50,这个脚本不起作用,我担心raw_input不是我想要使用的函数吗?以下是我的代码片段:
testNum = 3
div = 2
count = 1
totPrimes = raw_input("Please enter the primes: ")
while count < totPrimes :
while div <= testNum :
答案 0 :(得分:12)
做
totPrimes = int(totPrimes)
while count < totPrimes:
# code
raw_input
为您提供了一个字符串,您必须在进行任何数字比较之前将其转换为整数或浮点数。
答案 1 :(得分:0)
你需要将totPrimes转换成这样的int:
integer = int(totPrimes)
答案 2 :(得分:0)
您只需要以整数转换原始输入。对于您的代码,只需将代码更改为:
testNum = 3
div = 2
count = 1
totPrimes = raw_input("Please enter the primes: ")
totPrimes=int(totPrimes)
while count < totPrimes :
while div <= testNum :
答案 3 :(得分:0)
然后使用输入。
原始输入返回字符串。
输入返回int。
答案 4 :(得分:0)
raw_input函数总是返回'string'类型raw_input docs,所以在这种情况下我们必须将totPrimes
'string'类型转换为'int'或'float'类型,如下所示:< / p>
totPrimes = raw_input("Please enter the primes: ")
totPrimes = float(totPrimes)
你可以像这样组合它们:
totPrimes = float(raw_input("Please enter the primes: "))
为了比较python count < totPrimes
中的内容,比较需要有意义(数字到数字,字符串到字符串)或程序将崩溃,while count < totPrimes :
while循环不会运行。
您可以使用try / except来保护您的程序。 managing exceptions
对于参加“为每个人编程”课程的人来说,你可以花费数小时并按照这种方式评分。你应该试着找出if / else语句。
答案 5 :(得分:0)
您必须将每个号码更改为&#34; hrs&#34;或者&#34;率&#34;。
例如:40*10.50+(h-40)*10.50*1.5
错误,40*r+(h-40)*r*1.5
是对的。