2016-04-12 12 views
1

bilmiyorum:Python'da bir değişkene nasıl alıntı yapabilirim? açıklama Sorunum için, burada kod ve hata nasıl

html_title = 'abc' 
file_name = html_title, '.txt' 
html_write_to_file = open(file_name, 'wt') 
... 
... 
... 

hatası:

TypeError: coercing to Unicode: need string or buffer, tuple found 

Ben file_name bu

html_write_to_file = open('file_name', 'wt') gibi tırnak işareti eklemek gerektiğini fark

Tırnak işaretleri eklediğimde, Değişken işlevler'da çalışmaz

ama böyle dosya formatını kullanmak zorunda: ... html_title, '.txt'

ben nasıl yapılacağını bilmiyorum

Tamamlayıcı soru:

karakter Japon'dur veya Çince, denedim utf-8'e kodlayın, hala iyi çalışmıyor.

+0

'file_name = html_title, '.txt', bir dizgi değil, bir tuple üretir. –

+0

Sorunuzun "dizeleri nasıl birleştirebilirim?" Şeklinde olması gerekiyor. –

+0

, "a", "b" 'bir" tuple "(" a "," b ")', '" a "+" b "' 'str' ''ab'' dır. ** Virgül parıltı değil, bir tuple yapar. ** –

cevap

3

Burada bir başlığın oluşturun:

file_name = html_title, '.txt' 

virgül bir tanımlama grubu yapar; Burada iki elementle bir tuple yarattın. Daha sonra open() komuta o demet:

html_write_to_file = open(file_name, 'wt') 

sadece bir dize alabilir şikayet; Bir tuple'nın kabul edilemez olduğunu söyler.

file_name = html_title + '.txt' 

Şimdi file_name de bir dize nesnesidir:

Muhtemelen sadece html_title dizeye .txt eklemek, bu nedenle dizeyi bitiştirmek için + kullanmak istedi.

İlgili konular