ファイルがあるとしましょう。 "hello" TAB "alex"の書き方
これはコードです:
f = open(filename, 'w')
f.write("hello\talex")
文字列内の\ tは、水平タブのエスケープシーケンスです。
文字列リテラルで\ tを使用できます。
"hello\talex"
Python リファレンスマニュアル には、文字列で使用できるいくつかの文字列リテラルが含まれています。これらの特殊な文字シーケンスは、エスケープシーケンスの意図した意味に置き換えられます。
以下は、いくつかのより便利なエスケープシーケンスの表と、それらからの出力の説明です。
Escape Sequence Meaning
\t Tab
\\ Inserts a back slash (\)
\' Inserts a single quote (')
\" Inserts a double quote (")
\n Inserts a ASCII Linefeed (a new line)
基本的な例
タブスペースで区切られたいくつかのデータポイントを印刷したい場合、この文字列を印刷できます。
DataString = "0\t12\t24"
print (DataString)
返品
0 12 24
リストの例
リストのアイテムを印刷し、TABでアイテムを分割したい別の例です。
DataPoints = [0,12,24]
print (str(DataPoints[0]) + "\t" + str(DataPoints[1]) + "\t" + str(DataPoints[2]))
返品
0 12 24
生の文字列
生の文字列(プレフィックス "r"を含む文字列)、文字列リテラルは無視されることに注意してください。これにより、これらの特殊な文字シーケンスを変更せずに文字列に含めることができます。
DataString = r"0\t12\t24"
print (DataString)
返品
0\t12\t24
おそらく望ましくない出力
文字列の長さ
文字列リテラルの長さは1文字にすぎないことにも注意してください。
DataString = "0\t12\t24"
print (len(DataString))
返品
7
生ストリングの長さは9です。
通常、コマンドラインインターフェイスでは\t
であり、これはchar \t
を空白タブ文字に変換します。
たとえば、hello\talex
-> hello--->alex
。
回答で言及されていなかったように、テキストを揃えたり間隔を空けたりする場合に備えて、文字列形式機能を使用できます。 (上記のpython 2.5)もちろん、\t
は実際にはTABトークンですが、説明した方法ではスペースが生成されます。
例:
print "{0:30} {1}".format("hi", "yes")
> hi yes
別の例、左揃え:
print("{0:<10} {1:<10} {2:<10}".format(1.0, 2.2, 4.4))
>1.0 2.2 4.4