与えられた文字列の文字数を取得したいと思います。 しかし、len(txt)はユニコード形式の文字数を返しますが、実際の文字数は少ないです。例えばPython 3 - エンコードされた文字列の文字数
:
txt = שלום וברכה
len(txt) # returns something different then 10
私は、Python 3では利用できませんstring.decode
を使ってPython 2のためのソリューションを、見た - と私はそれが私のために適切な答えはわかりません。 ところで、文字列のエンコーディングはcp862
です。
EDIT:詳細: 私は私はそれは長さが52
╫¬╫ñ╫¿╫ש╫ר ╫£╫ª╫ץ╫¥: ╫¢╫ת ╫¬╫ª╫£╫ק╫ץ ╫נ╫¬ ╫¢╫ש╫ñ╫ץ╫¿
ある
印刷するとき、これは私が読んラインの出力であるwith open(path, "r", encoding="cp862") as textFile:
を使用してテキストファイルから読み込みます実際の行は次のとおりです:תפריטלצום:כךצצוחואתכיפור 実際の長さは29
repl.itで入手できます:> len( "שלוםוברכה")=> 10.おそらく、あなたのプラットフォームとPythonのバージョンに関する詳細を提供することができます。 – Yegers
私はこれを得ます: '>>> len( 'שלוםוברכה') >>> 10' – IsaacDj
少なくとも、問題を再現するための実際の有効なコードを提供します。このサンプルは構文的にも有効ではありません。 – deceze