1

以下は問題のスニペットです:

print '{:─^10}'.format('') # Print '─' character 10 times

私はこれを使って素敵なコンソールボーダーなどを作成しています。問題は、これをpyファイルで#コーディングUTF-8を使用して実行すると、次のようになります。ValueError:無効な変換仕様

Pythonシェルでこれと同じスクリプトを実行すると、エスケープ文字が吐き出されます:'\ xc4 \ xc4 \ xc4 \ x ...'

これを(私のスクリプトで)「─」文字を出力する方法がわかりません。UTF-8エンコーディングのためにprint'─ 'を使用すると、'─'文字を問題なく印刷できますが、何らかの理由でstring.format()関数では許可されません。

助言がありますか?これはおそらく簡単に修正できると思いますが、私はPythonプログラミングに非常に慣れていません。

前もって感謝します。

4

1 に答える 1

2

Python2を使用していると仮定すると、unicode(u'')文字列を使用する必要があります。

print u'{:─^10}'.format(u'')
于 2011-12-09T22:44:21.400 に答える