Can';不要在Python中中断回文循环

Can';不要在Python中中断回文循环,python,for-loop,palindrome,Python,For Loop,Palindrome,我只是一个使用Python的初学者,并且已经创建了用于打印1-1000范围内所有回文数字的代码。然而,在我的print语句之后,代码只是在1-99之间不断循环和打印数字。我试过使用break;在print(i)语句之后,但它会导致控制台在循环中打印1和*回文,而不是回文数字。有什么打破循环的建议吗` pi = 3.14159 area = 0 def areaSquare(squareWidth): return squareWidth * squareWidth def a

我只是一个使用Python的初学者,并且已经创建了用于打印1-1000范围内所有回文数字的代码。然而,在我的print语句之后,代码只是在1-99之间不断循环和打印数字。我试过使用break;在print(i)语句之后,但它会导致控制台在循环中打印1和*回文,而不是回文数字。有什么打破循环的建议吗`

    pi = 3.14159
area = 0

def areaSquare(squareWidth):
    return squareWidth * squareWidth

def areaCircle(radius):
    return pi *(radius * radius)

   
def menu():     #Creat the menu for user to see
    print("\nCalculations")
    print("1. Calculate area of a square\n2. Calculate the area of a circle\n3. Display palindromes up to 1,000\n4. Exit programme.")


menu()  # call the menu
option = int(input("Enter an option: "))

while option != 4:   #create a loop
    if option == 1:
            print("***Area of a square***") 
            squareWidth = float(input("Enter width of square(cm): "))
            print("The area of the square of width ",squareWidth, "cm = ", areaSquare(squareWidth), "cm squared")
            menu()
            option = int(input("Enter an option: "))
    elif option == 2:
            print("***Area of a circle***");
            radius = float(input("Enter radius of circle(cm): "))
            print("The area of a circle of " , radius , "cm = ", areaCircle(radius), " round")
            menu()
            option = int(input("Enter an option: "))
    elif option == 3:
           for i in range(1, 1000): 
              if str(i) == str(i)[::-1]:
                  print(i,)
    else:   
        print("Invlid entry, please select a number between 1 and 4.")

        menu()
        option = int(input("Enter an option: "))     

print("Goodbye!")  
打印(“**回文***”);
对于范围(1000)内的i:
如果str(i)==str(i)[::-1]:
印刷品(一)

这应该能奏效。我认为您有一个外部循环导致代码缩进,这就是为什么您的循环没有中断

打印(“**回文***”);
对于范围(1000)内的i:
如果str(i)==str(i)[::-1]:
印刷品(一)


这应该能奏效。我认为您的代码中有一个导致缩进的外部循环,这就是为什么您的循环没有中断。

谢谢大家。我将while循环更改为if语句,并且能够使循环中断

谢谢大家。我将while循环更改为if语句,并且能够使循环中断

如果您只需删除范围(1000)内i的缩进即可。请分享你得到的输出的屏幕截图。对我来说,它也适用于适当的缩进。我建议将最后两行中的
str(I)
I
分别替换为
n
。如果您仅从
中删除范围(1000):
行中的I的缩进,则效果良好。请分享你得到的输出的屏幕截图。对我来说,它也适用于适当的缩进。我建议将最后两行中的
str(I)
I
分别替换为
n
。啊,是的,可能是外部while循环?这是全文code@CherylO“哈根,如果我的回答解决了你的问题,你能接受并结束这个问题吗?谢谢:)啊,是的,可能是外环?这是全文code@CherylO“哈根,如果我的回答解决了你的问题,你能接受并结束这个问题吗?谢谢:)