簡體   English   中英

我的 if 語句是錯誤的,但它確實打印了結尾

[英]My if statement is false but it does print the end

x = 5
print('Before 5')
if x > 5:
    print('Is 5')
    print('Is still 5')
    print('Third 5')
    print('Afterwards 5')
    print('Before 6')
if x == 6:
    print('Is 6')
    print('Is still 6')
    print('Third 6')
print('Afterwards 6')

所以開頭是錯誤的,我希望只打印 Print('Before 5')print('Afterwards 5') 和 print('Before 6') 但它沒有,只打印 print('Before 5') 並停止. 我還嘗試通過刪除空格來使它們與 true 語句不在同一行,這是我的結果:

第 9 行,如果 x == 6:IndentationError:意外縮進

我自己學習,這是我第一次學習編程語言,它很有趣,但我很難解決這個問題:D 謝謝。

試試 elif: 而不是 if: --- 它應該這樣工作

它停止是因為:x 不大於 5,所以它會跳過第一個 if。 x 不是 6,所以它會跳過第二個 if。 它打印兩個 if 塊之外的所有內容。 這就是為什么它只打印Before 5Afterwards 6

我想你想要這個:

x = 5
print('Before 5')
if x > 5:
    print('Is 5')
    print('Is still 5')
    print('Third 5')
print('Afterwards 5')
print('Before 6')
if x == 6:
    print('Is 6')
    print('Is still 6')
    print('Third 6')
print('Afterwards 6')

您只需要刪除'print('Afterwards 5') 和print('Before 6') 上的縮進。 所以如果我理解你的問題是正確的,那么這就是解決方案

x = 5

print('Before 5')

if x > 5:
    print('Is 5')
    print('Is still 5')
    print('Third 5')

print('Afterwards 5')
print('Before 6')

if x == 6:
    print('Is 6')
    print('Is still 6')
    print('Third 6')

print('Afterwards 6')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM