raise
条件が満たされない場合、終了せずにそれ以上のコードの実行を停止する方法として、Python 2.7 で functionを使用します。これを以下の例に示します。
from Tkinter import *
import tkMessageBox
def foo():
a = 3
if a == 2:
tkMessageBox.showinfo('Hello', 'Yup yup yup')
else:
tkMessageBox.showinfo('Hello', 'My bad!')
raise
tkMessageBox.showinfo('Further code' ,"You shouldn't see me if a is not 2")
app = Tk()
app.title("ABC")
app.geometry()
filetype_fasta = [('fasta files', '*.fasta'), ('All files', '*.*')]
button_templ = Button(app, text = 'Click me', width =6, command = foo)
button_templ.grid(row = 3, column = 2)
app.mainloop()
私が持っている複雑なスクリプトでは問題なく動作します。私の質問はこれです-この方法を使用する際に、私が知っておくべき潜在的な問題はありますraise
か? はいの場合、同じことを行うためのより良い/一般的な方法はありますか?
編集:アイデアをよりよく示すために例を変更しました。