【解決方法】Python での「else」ステートメントの実行に関する問題


Python で円グラフを生成する関数を作成しました。 チャートが生成されない場合にメッセージを出力するelse条件を追加しました。

‘else’ ステートメントがない場合、円グラフが生成されます。 しかし、コードにelseステートメントを含めると、条件が満たされたとしても何も出力されません。 これは、else ステートメントを適切に記述していないことを意味します。

どこが間違っているのか教えてください。

私が試したこと:

def Piechart(self, file_path, rows, columns):
        global fig
        df = file_reading(file_path, rows)
        if len(columns) == 2:

          column1 = columns[0]
          column2 = columns[1]

        # Pie chart
          pie_ch = px.pie(df, values=column1, names=column2)
          pie_ch.write_html("templates/visualization.html")
        
        elif len(columns)< 2 or len(columns)>2 or type(column1)!= int or 
        type(column1)!= float:
            print("Please select 2 features only & the first feature should 
            be numerical")

解決策 2

これを試して

Python
if len(columns) == 2 and (type(columns[0]) == int or type(columns[0]) == float):
    # Pie chart
    pie_ch = px.pie(df, values=columns[0], names=columns[1])
    pie_ch.write_html("templates/visualization.html")
else:
    print("Please select 2 features only & the first feature should be numerical")

解決策 1

わかりません-まず、ありません else 第二に、あなたと同じ状況下であなたのコードを実行することができないため、何が問題を引き起こしているのかわかりません – どんな値が渡されているのか分かりません.私たちがしたかどうかをテストするシステム!

だから、それはあなた次第になるでしょう。
幸いなことに、何が起こっているのかを調べるのに役立つツール、デバッガーを利用できます。 使用方法はコンパイラ システムによって異なりますが、IDE と「デバッガ」の名前を Google で検索すると、必要な情報が得られます。
幸いなことに、何が起こっているのかを調べるのに役立つツール、デバッガーを利用できます。 使い方がわからない場合は、Google で「Python デバッガー」を検索すると、必要な情報が得られます。

関数の最初の行にブレークポイントを置き、デバッガーでコードを実行します。 次に、コードとデータを見て、何が起こるべきかを手動で解決します。 次に、各行を 1 ステップ実行して、予想どおりの動作を確認します。 そうでない場合は、問題が発生したときであり、後戻りして (またはもう一度実行して詳しく調べて) 原因を突き止めることができます。

申し訳ありませんが、私たちはあなたにそれを行うことはできません – 新しい (そして非常に便利な) スキルを学ぶ時が来ました: デバッグ!

コメント

タイトルとURLをコピーしました