today::エンジニアに憧れる非エンジニア

今のところは、エンジニアとは言えないところの職種です。しかしエンジニア的なものの考え方に興味津津。

Pythonあれこれ 2021-01-31 - クォート

概要

「Head First Python 第2版」を進めていった中で考えたことの記録です。

Head First Python 第2版 ―頭とからだで覚えるPythonの基本

Head First Python 第2版 ―頭とからだで覚えるPythonの基本

  • 作者:Paul Barry
  • 発売日: 2018/03/24
  • メディア: 単行本(ソフトカバー)

Pythonにおけるクォートの使い方

  • Pythonにおいては、文字列を囲むために以下のクォート類を用いる
    • シングルクォート(')
    • ダブルクォート(")
    • 三重クォート("""または''')

シングルクォートおよびダブルクォートで文字列を囲む用法

  • Pythonにおいて、文字列リテラルを表す一般的な記法である
  • Pythonにおいては、文字列リテラルを表す囲み記号はダブルクォートよりシングルクォートのほうが主流である
print('Hitch-hiker')
# => Hitch-hiker

# 対象となる文字列にアポストロフィそのものを含む場合は、囲み記号にダブルクォートを用いるのが一般的である
# アポストロフィの前にエスケープ記号を置く煩雑さを避けるのが主な理由
print("Don't panic!")
# => Don't panic!

# エスケープ記号としては`\`を用いる
print('Don\'t panic!')
# => Don't panic!

三重クォートで文字列を囲む用法

  • 複数行から成る文字列を記述するために用いる場合がある
    • 他言語を含む同様の概念は、一般に「ヒアドキュメント(here document)」と呼ばれる
  • Pythonにおいては、関数のドキュメンテーションを記述する際に多用される
    • 当該文字列は「docstring」と呼ばれる
  • Pythonにおいては、三重クォートを表現するためには二重引用符を用いるのが一般的
    • 単引用符を使うこともできるが、Pythonの三重クォートで単引用符を使うのは主流ではない
print("""このように
複数行の文字列を
一つの文字列リテラルとして扱うことができます。
改行部分は、そのまま
改行として扱われます。""")
# => このように
# => 複数行の文字列を
# => 一つの文字列リテラルとして扱うことができます。
# => 改行部分は、そのまま
# => 改行として扱われます。

↑複数行の文字列を一つの文字列リテラルとして扱うために三重クォートを用いる用法

def a_descriptive_name(optional_arguments):
    """ドキュメンテーション文字列"""
    # ...略...

↑docstringとして三重引用符を用いる用法