TypeError:+: 'StringVar'および 'str'のサポートされていないオペランドタイプ//テキストファイルを作成します。

2016-03-20 9 views
1

テキストファイルを作成するスクリプトを作成しようとしています。ユーザーが入力した内容に変更されます。ここに私のコードは次のとおりです。TypeError:+: 'StringVar'および 'str'のサポートされていないオペランドタイプ//テキストファイルを作成します。

from tkinter import* 

fenetre = Tk() 
def creation(): 
    open(f1 + '.txt', "w") 
Label1 = Label(fenetre, text = 'Nom de votre classe :') 
Label1.pack(side = LEFT, padx = 5, pady = 5) 
f1 = StringVar() 
Champ = Entry(fenetre, textvariable= f1, bg ='bisque', fg='maroon') 
Champ.focus_set() 
Champ.pack(side = LEFT, padx = 5, pady = 5) 
Bouton = Button(fenetre, text ='Valider', command = creation()) 
Bouton.pack(side = LEFT, padx = 5, pady = 5) 
fenetre.mainloop() 

しかし、それは動作し、次のエラーを与えていない:

TypeError: unsupported operand type(s)s for +: 'StringVar' and 'str' 

私は一度ファイルを作成することに成功したが、それは名前を得ませんでした。

答えて

1

値を使用する場合はf1.get()に電話する必要があります。 f1自体は文字列ではなく、文字列を保持できるオブジェクトです。 get()メソッドを呼び出すと、それが保持している実際の文字列が返されます。

def creation(): 
    open(f1.get() + '.txt', "w") 
+0

私はそれを立ち上げたときに動作し、私は別の問題を解決し、多くは、私のスクリプトファイルを作成したおかげで、私はブトン=ボタン(fenetre、テキスト=「Valider」、コマンド=作成()の後に()を消去) –

 関連する問題

  • 関連する問題はありません^_^