在Python中循环计数范围

时间:2016-07-14 17:43:17

标签: python scope palindrome

我试图弄清楚这段代码的工作原理。如何在for循环之外访问i

# Palindrome of string
str=raw_input("Enter the string\n")
ln=len(str)
for i in range(ln/2) :
    if(str[ln-i-1]!=str[i]):
        break
if(i==(ln/2)-1):         ## How is i accessible outside the for loop ? 
    print "Palindrome"
else:
    print "Not Palindrome"

1 个答案:

答案 0 :(得分:1)

这是Python的一部分。在for循环中声明的变量(包括循环计数器)在它们完全离开范围之前不会衰减。

看看这个问题:

Scoping In Python For Loops

来自答案:

for foo in xrange(10):
    bar = 2
print(foo, bar)
     

以上将打印(9,2)。