2011-11-08 9 views
13

İkili bir dosyam var. Bu dosya bir UTF-8 dizesi içerir. Ayrıca, bu dizgenin sadece tek bir kelime olduğu garanti edilir. Python'da, bu dizede harf sayısını nasıl alabilirim? python unicode dize boyutu alın

ben bu dosyayı açtı diyelim ve bayt okuyun:

bytes = open("1.dat", "rb").read() 

sonraki ı uzunluğu öğrenmek için yapmanız gereken şey UTF-8 dizesinin (harfler, değil bayt cinsinden)?

+0

"Bu dizenin yalnızca tek bir sözcük olduğu garanti edilir" ile alaka düzeyi nedir? –

+2

Dosyayı ikili modda açmayın. 'Codecs.open' ile açın ve ona bir kodlama argümanı verin. Sorun çözüldü. – tchrist

cevap

28
unicode_string = bytes.decode("utf-8") 
print len(unicode_string) 
+2

Python 3'te 'bytes = len (open ('1.dat', encoding = 'utf-8'). Read())' ayarını yapabilirsiniz. – Cito