Python Works

Pythonで色々プログラミングする

Python入門 - 文字列

Pythonで文章を書く

Pythonで扱えるデータには数値の他にも「文字列」があります。「'」「"」で囲った部分が文字列になります。


>>> print('I am programmer!')
I am programmer!
>>> print("I am programmer!")
I am programmer!
>>> print('110')
110
>>> print('090-XXXX-YYYY')
090-XXXX-YYYY

 

このように、数値も「'」「"」で囲えば文字列です。変数ももちろん使えます。


>>> iam = 'I am '
>>> prog = 'programmer!'
>>> print(iam + prog)
I am programmer!

 

数値だと「+」は普通の足し算ですが、文字列では2つの文字列をくっつけた文字列になります。

 

ここで1つ、Python(というかIDLE)の弱点があります。日本語に弱いのです。私は現在MacでIDLEを使っているのですが、直接、日本語を入力できないのです(わざわざ別の場所で書いたものをコピへしています)。Python3 では、文字列はUTF-8で表現されます。

 

エスケープシーケンス

文字列でアルファベットや数値、ひらがなを書くのは問題ありませんが、特殊な文字を表すことができません。これを解決するのがエスケープシーケンスです。「¥」(日本語キーボードでは円記号、英語キーボードではバックスラッシュ)を最初につけることで、特殊な文字を表すことができます。

  • \\ 「\」バックスラッシュ
  • \'「'」シングルクォーテーション
  • \" 「"」ダブルクォーテーション
  • \a ベル(ベル音を鳴らす)
  • \b バックスペース
  • \f 改ページ フォームフィード
  • \n 改行 ラインフィード
  • \r キャリッジリターン
  • \t 水平タブ
  • \r 垂直タブ
  • \N{name} Unicodeデータベースで名前nameを持つ文字(Unicodeのみ)
  • \uxxxx 16ビットの値で表されるUnicode文字(xxxxは16進数)
  • \Uxxxxxxxx 32ビットの値で表されるUnicode文字(xxxxxxxxは16進数)
  • \ooo 8進数で表されたASCIIコード(oooが8進数)
  • \xhh 16進数で表されたASCIIコード(hhが16進数)
  • \0 NULL文字

 


>>> print('i\'m programmer!')
i'm programmer!
>>> print('Hello\n\tWorld!')
Hello
World!
>>>

数値と算術演算 前 | Python入門 | 次 文字列