Python.use(better) #OOP:文字列 -- 連結
‖記事一覧‖ Python.use(better)《Python3.1》
OOP:文字列 -- 連結
《著》真樹育未、小粒ちゃん+∞《監修》小泉ひよ子とタマゴ倶楽部
第1版♪1988/05/23 ● 第2版♪2001/01/29 ● 第3版♪2009/12/15
オブジェクト指向プログラミング〔OOP〕の基本概念の理解を深めます。
※ Python1.5 で作成した例題を、Python3.1 で再構成しました。
コンテナー(コレクション)
任意のオブジェクトを保持するコンテナー(コレクション)として、
- シーケンス〔sequence〕
- マップ〔map〕
が挙げられます。
文字列
文字列は、他の(長さが1の)文字列を保持するコンテナーと見なせます。
■ 変数を利用するということ
変数によって束縛されるオブジェクトは、回収されずに存続します。そのため、オブジェクトの状態を保持したいときには、変数を利用すると便利です。
>>> a = "A"; a; id(a) 'A' 949600 >>> b = "B"; b; id(b) 'B' 578304
変数 a,b によって束縛される文字列 'A','B' を用いて、連結した文字列 'AB' を生成します。
>>> s1 = a+b; s1; id(s1) 'AB' 20276064 >>> c0,c1 = s0; c0; id(c0); c1; id(c1) 'A' 1014432 'B' 1014464 >>> s2 = a+b; s2; id(s2) 'AB' 20276096 >>> c0,c1 = s0; c0; id(c0); c1; id(c1) 'A' 1014432 'B' 1014464
演算子 + を利用するたびに、新たに連結した文字列オブジェクト s1: 'AB'〈id:20276064〉および s2: 'AB'〈id:20276096〉が生成されます。ここで、着目して欲しいのは、
- 連結する前に用意した、変数 a,b によって束縛される文字列 'A','B' と、
- 演算子 + によって連結された文字列 'AB' が、要素として保持する文字列 'A','B' とは、
別のオブジェクトになることです。
《note》:連結した文字列オブジェクトを構成する要素として、どの(既存の)文字列オブジェクトを再利用するかについて、プログラマーは介入できません。
》こちらに移動中です《
↑TOP