如果我为限制输入'5'而副本输入'3',我希望输出为
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
这是我的代码
limit = int(input("Limit: ")
copies = int(input("Copies: ")
count = 1
for i in range(copies):
for j in range(limit):
print(count, end= " ")
count += 1
if count == limit: count = 0
print()
但是这段代码的输出是
1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
为什么我的“if count == limit:count = 0”似乎没有做任何事情?
答案 0 :(得分:6)
让我们手动查看迭代:您从class_one
开始。
因此,在count = 1
的第一次迭代中,内部循环运行copies
次。在每次内部迭代之后,limit=5
递增1。因此,经过5次迭代后,count
将增加一次五次。因此内循环后的值将为count
。
此时,您检查6
是否等于count
的值。因此,检查limit
是否等于6
,这显然不是真的。因此,变量不会重置,下一个外部迭代会运行。
由于您永远不会减少5
的值,因此检查永远不会成为真,因此count
会不断增加而不会被重置。
要解决此问题,只需删除检查,然后重置count
,无论其值如何。由于您总是运行内循环count
次,因此您将始终知道增加limit
的频率,因此没有理由检查:
count
您还希望将值重置为for i in range(copies):
for i in range(limit):
print(count, end= " ")
count += 1
count = 1
以匹配初始大小写,并使该行中的第一个值为1
。
答案 1 :(得分:0)
因为当您执行mysite/files/js/numeral.min.js: 200
mysite/js/94842541.js: 200
mysite/files/css/page-home.min.css?v=6: -999
mysite/files/css/ui.min.css?v=18: -999
mysite/files/js/ui.min.js?also=jquery.selectric.min.js,jquery.checkradios.min.js,index.min.js&v=53: -999
时,它只会转到range(limit)
。
e.g。 limit-1
)将range(3
,因此最后一次统计将始终为[0, 1, 2]
。
您可以在外部循环中重置limit + 1
的替代解决方案,也可以检查是否count = 1
。
答案 2 :(得分:0)
如果你不需要。
只需将重置语句放在内部FolderBrowserDialog1
答案 3 :(得分:0)
只需初始化外部def register(request):
context = RequestContext(request)
registered = False
print "inside register view"
if request.method == 'POST':
consultant_form = ConsultantsForm(data=request.POST)
if consultant_form.is_valid():
consultant = consultant_form.save(commit=False)
consultant.save()
registered = True
else:
print consultant_form.errors
else:
consultant_form = ConsultantsForm()
return render_to_response(
'register.html',
{'consultant_form': consultant_form, 'registered': registered},
context_instance=RequestContext(request))
def login_user(request):
context = RequestContext(request)
if request.method == 'POST':
username = request.POST['username']
password = request.POST['password']
print type(username)
try:
user = Consultants.objects.get(Q(username= username) & Q(password= password))
user = authenticate(username=username, password=password)
if user.is_active:
user.backend = 'django.contrib.auth.backends.ModelBackend'
login(request, user)
a= request.user.username
return HttpResponse("welcome......you are succesfuly log in")
else:
return HttpResponse("Your account is disabled.")
except ObjectDoesNotExist:
return HttpResponse("INvalid User")
循环中的count
变量,然后您就不必重置它:
for
但你可以更有效地做到这一点:
limit = int(input("Limit: ")
copies = int(input("Copies: ")
for i in range(copies):
count = 1
for j in range(limit):
print(count, end= " ")
count += 1
print()