簡體   English   中英

無法找出“ if / else”陳述

[英]Can't figure out an “if/else” statement

PYTHON:試圖計算擺在不同行星上擺動所需的時間,我對此非常陌生,因此可能有一個簡單的解決方案:

def main():
    print('Period of a pendulum')
    Earth_gravity = 9.8
    Mars_gravity = 3.7263
    Jupiter_gravity = 23.12
    print('     ')
    pen = float(input('How long is the pendulum (m)? '))

if pen < 0:
    print('illegal length, length set to 1')
else:
    print('     ')
main()

我想做的是,如果輸入的值是負值,則將其設置為“ 1”並顯示消息“非法長度,長度設置為1”。 如果它是一個正數,那么我將通過方程式找出擺的周期。 我收到“如果pen <0:builtins.NameError:未定義名稱'pen'的語法錯誤消息”謝謝!

def main():
    print('Period of a pendulum')
    Earth_gravity = 9.8
    Mars_gravity = 3.7263
    Jupiter_gravity = 23.12
    print('     ')
    pen = float(input('How long is the pendulum (m)? '))
    if pen < 0:
        print('illegal length, length set to 1')
    else:
        print('     ')

main()

試試這個:pen變量在函數之外,因此在if語句中不可用

首先定義一個定義pen的方法:

def main():
    print('Period of a pendulum')
    Earth_gravity = 9.8
    Mars_gravity = 3.7263
    Jupiter_gravity = 23.12
    print('     ')
    pen = float(input('How long is the pendulum (m)? '))

但是根據縮進,您現在正在嘗試在main方法之外使用pen

if pen < 0:
    print('illegal length, length set to 1')
else:
    print('     ')
main()

您可以將if/else移入main方法或完全刪除main定義。

暫無
暫無

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

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