0

私は python を使用して、線形方程式の計算を行うコマンド ライン プログラムを作成しています。私の関数宣言の1つは次のようなものです:

def lineSub():
  while true:
    print("This is the Linear Equation submenu")
    print("Choose and option")
    print("0: exit")
    print("1: input 'm' and 'b' in y=mx+b")
    print("2: input 'a' , 'b' and 'c' in ax+by=c")
    print("3: input a point and a slope") 
    print("4: input two points")
    choice = getInt("Choice: ")
    lineSM = {
      1: yIntForm,
      2: stdForm,
      3: pointSlope,
      4: twoPoints,
    }
    if choice == 0:
      return 0 
    elif not(choice in range(0,5)):
      print("That's not a choice")
    else:  
      lineSM[choice]()

この選択により、ユーザーはサブメニュー機能に移動します。プログラムを実行するたびに、次の行が表示されます

def lineSub():

は無効な構文です。何が問題なのかわかりません。他のすべての関数定義はまったく同じであり、それらのエラーは表示されません。助けてください!

4

1 に答える 1

3

おそらく、この前の右中かっこまたは同様のものがありません。

例えば:

def myfunc():
    print("I forgot the closing parenthesis here--->"

def lineSub():
  while True:
    print("This is the Linear Equation submenu")

Python は括弧内の改行を無視するため、これは不適切な構文がdef lineSub()行にあるように見えます。

于 2013-05-12T02:31:05.507 に答える