def Counter(Num):
Num = str(Num)
count = 0
for i in Num:
count = count + 1
def Reverse(Number):
counter(Number)
Number = str(Number)
if Number[0] == Number[count]:
print("The Original and The Reversed numbers are the same\n")
else :
print("The Original and the Reversed numbers aren't the same\n")
Reverse(123)
我是一个初学者,我想做一个计数器,然后使用该计数器检查数字是否相同(如果取反),但是我总是会遇到(name "count" is not defined
)错误。
答案 0 :(得分:1)
def Counter(Num):
Num = str(Num)
count = 0
for i in Num:
count = count + 1
# count variable is local to Counter function. return the value get make it available from where it is being called
return count
def Reverse(Number):
count = Counter(Number)
Number = str(Number)
if Number[0] == Number[count-1]: # index starts from zero. last index is count-1.
print("The Original and The Reversed numbers are the same\n")
else :
print("The Original and the Reversed numbers aren't the same\n")
Reverse(123)
它不适用于数字大于3的数字,因为它只检查第一个数字和最后一个数字。
更好的解决方案
def Reverse(Number):
Number = str(Number)
if Number == Number[::-1]: # Number[::-1] reverses the string
print("The Original and The Reversed numbers are the same\n")
else :
print("The Original and the Reversed numbers aren't the same\n")
答案 1 :(得分:0)
def Counter(Num):
Num = str(Num)
count=0
for i in Num:
count = count + 1
def Reverse(Number):
count= Counter(Number)
Number = str(Number)
if Number[0] == Number[count-1]:
print("The Original and The Reversed numbers are the same\n")
else :
print("The Original and the Reversed numbers aren't the same\n")
Reverse(123)
您可以将变量定义为全局变量,也可以进行count-1操作,否则索引超出范围