Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Hackerrank没有';我不接受我的代码。为什么?_Python_Python 3.x_Loops_While Loop - Fatal编程技术网

Python Hackerrank没有';我不接受我的代码。为什么?

Python Hackerrank没有';我不接受我的代码。为什么?,python,python-3.x,loops,while-loop,Python,Python 3.x,Loops,While Loop,因此,任务是为所有非负整数I

因此,任务是为所有非负整数I 例如,用户输入为5,因此输出应为。。。 0 1. 4. 9 十六,

这是我的解决办法

# The first two lines of code were default and already there.
if __name__ == '__main__':
    n = int(input())

# Everything below is my code.
for i in range(0,5):
    while i < 5:
        print(i ** 2)
        i += 1
        break
#前两行代码是默认的,并且已经存在。
如果uuuu name uuuuuu='\uuuuuuu main\uuuuuuu':
n=int(输入())
#下面的所有内容都是我的代码。
对于范围(0,5)内的i:
当我<5时:
打印(i**2)
i+=1
打破
因此,尽管这在Python3.7中有效,但在Hackerrank中不起作用,因为如果输入一个大于5的数字,比如说7,Hackerrank将输出。。。 0 1. 4. 9 16 25 三十六

Python会在输出数字16后停止

如何在Hackerrank中修复此问题? 如果您想亲自查看问题,请点击这里的链接。

首先,如果要遍历n个数字,则不应在范围(0,5)内写入

其次,您不需要编写另一个while函数。您可以使用
进行循环
进行循环
进行此问题

改变

for i in range(0,5):
    while i < 5:
        print(i ** 2)
        i += 1
        break

要添加到@Marcus.Aurelianus回复:

如果您使用的是Python 2,请更改:

n = input()

因为你的回答有两个错误

第一个是,你不需要为N写你的值,你必须让用户加入

其次,数学运算是错误的。您需要将
print(i**2)
修复为
print(i*2)
,以便获得他们想要的结果。这可能就是它不接受的原因

我对同一问题的答复如下

if __name__ == '__main__':
n = int(input(""))
i = 0
while i < n:
    r = i * i
    i += 1
    print(r)
如果uuuu name_uuuu=='\uuuuuuu main\uuuuuu':
n=int(输入(“”)
i=0
而i
这应该可以:

如果uuuuu名称uuuuu=='\uuuuuuuuu main\uuuuuuuuuu':
n=int(输入())
对于范围(n)中的i:
当我<10时:
打印(i**2)
i+=1
打破
在Python2中:

if __name__ == '__main__':
    n = int(raw_input())
for number in range(0, n):
    print(number*number)
在Python3中:

if __name__ == '__main__':
    n = int(input())
for number in range(0, n):
    print(number*number)
在python 3中:

如果uuuu name_uuuu=='\uuuuuuu main\uuuuuu':
n=int(输入())
对于范围(0,n)内的i:

如果我因为你在(0,5)范围内为我写作,那么@user202729在每个问题一个问题上就足够公平了。我将来会记住这一点。无论如何,当我使用输入9提交代码时,hackerrank运行了一个测试。它没有在第五次通过后中断或停止代码,而是继续了4次。在我的机器中,它会在5次后损坏。@user202729 print i**2。抱歉。要
原始输入
。请不要在实际代码中使用此选项。有人可以输入
\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu,没有解释的答案很少有用。抱歉,因为我是从手机上回答,所以出现了一些键入错误。user202729如果您访问了问题的hackerrank链接,那么您就会知道问题是自解释的。问题应该是自包含的。这是有效的,但如果输入n=9,那么射程不是应该停在9点而不是5点吗?“为什么会这样呢?”尼克和鲁维茨,读一读。
if __name__ == '__main__':
    n = int(raw_input())
for number in range(0, n):
    print(number*number)
if __name__ == '__main__':
    n = int(input())
for number in range(0, n):
    print(number*number)