Pythonの研究ノート - 基本の概要03

1.共通機能:

    ABS():絶対値。

    CMP(ヴァラ、valB):2つの比較値。

    INT(ヴァル):他のデータ型は整数で変換します。

    STR(ヴァル)は:他のデータ型のSTRに変換されます。

    和([1,2,3])とリスト一覧和へのリターンを受信するステップと

    範囲(1、101):1から100までの一連を作成します。

    ジップ()関数は、リストの中に2つのリストを指定できます。

    でisinstance(xは、STR)変数xが文字列であるかどうかを判定することができます。

    アッパー();

    LEN(引数)

2.関数の定義:

    DEF関数名(パラメータリスト):

    関数は声明を返さない場合Psが、関数が終了した後に実行結果を返しますが、結果はNoneです。

3.戻り値は:

   関数の戻り値は通常の値であるが、Turple形態返される戻り値の複数であってもよいです。

4.再帰関数:

    この関数は、この関数は再帰関数で、自分自身の中に自分自身を呼び出します。

デフォルトパラメータ:

    次のコードは、名前=「世界」をデフォルトのパラメータです。

    デフ(名前=「世界」)挨拶:

  印刷 'こんにちは、'、名前、 ''

 )(挨拶
   挨拶(バート)

6.変数パラメータ

   あなたは関数が任意の数のパラメータを受け入れることができますしたい場合は、我々は変数のパラメータを定義することができます。

DEFキー(*引数):
    プリント引数

  アスタリスクを持つ変数パラメータの名前の前に、我々は、0に可変パラメータに1つ以上のパラメータを渡すことができます。

7.スライス(撮像部)

    スライスリストの7.1ペア(撮影したいくつかの要素のリスト):スライス()

          >>> L [0:3]

   【「アダム」、「リサ」、「バート」]

         A. L [0:3](3除く)インデックス3まで、0から採取開始インデックスを表します

         。bの Lの:最初のインデックスが0である場合、また、と略記することがある[3]

         。Cは、  [1:3] L:二つの要素を取り出し、インデックス1から開始してもよいです

         D。 のみ:Lの[:]すべての要素を削除表します

         。Eの  スライシング動作も[:: 2]それぞれは、2つを取り、前記の最初から最後まで取らL毎にNをとっ、三番目のパラメータを指定することができます;

    7.2ペアは、スライスしたタプル

          私は説明しませんリストのスライスと同様に、!

    7.3下降セクション:L [-1:]

    弦セクション7.4対: 'ABCDEFG' [3] => 'ABC'

          Pythonのは、ファンクション文字列のために取られていない、唯一のスライス操作を完了することができます。

8.イテレーション

     リストやタプルを与えた場合にはPython 8.1で、我々はループのために、私たちはこのなる反復を横断して、リストやタプルを横切ることができます。    

     順序付きコレクション:リスト、タプル、STRとユニコード。

     順不同のセット:セット 

     そして、キーと値のペアの順不同のセットが持つ:辞書

    8.2反復インデックス

          Pythonは、反復は常に要素自体アウトではなく、要素のインデックスです。要素の順序付きコレクションのために実際にインデックスされます。時には、我々はサイクルのインデックスを取得したいん、列挙()関数を使用することです:          

          列挙(L)のインデックス、名前のために:

                 印刷インデックス、「 - 」、名前

列挙()関数を使用して、我々は同時にforループで、インデックスインデックスと要素名をバインドすることができます。しかし、これは()特別な構文を列挙されていません。【 'アダム'、 'リサ'、 'バート'、 'ポール']と同様になる:実際に()関数を列挙する(1 'リサ')、[(0、 'アダム')、(2 「バート」)、(3「ポール」)]このように、要素の各反復は、実際にはタプルです。

    列挙中のT(L)のために:
        インデックス= T [0] 
        名= tの[1] 
        印刷インデックス、 ' - '、名前

私たちが知っている場合は、各タプルの要素は、ループのための更なると略すことができ、2つの要素が含まれています。

    :列挙(L)のインデックス、名前のための
        「 - 」、名前のプリントインデックス、

これは単純でなく、より少ない2つの割り当てをコーディングしないでしょう。目に見える、本当に反復インデックスインデックスアクセスによって、しかし列挙することによって()関数は、自動的にすべての要素(インデックス、要素)などのタプル、そして反復なりません、それはまた、インデックスと要素自体を獲得しました。

     値の8.3反復辞書

           私たちは、ループ反復の辞書のため、直接、あなたがキーのdictの時間を得ることができるとともに、辞書オブジェクト自体は反復可能オブジェクトで学んできました。我々は値の反復辞書オブジェクトをしたい場合は、どのようにすればよいですか?辞書オブジェクトは、値のすべての値を含むリストに辞書を変換()メソッドを持っているので、我々は各反復は、辞書の値です。

           辞書オブジェクトは辞書に変換した値()メソッドは、すべての値のリストを含む。値()メソッドに加えて、itervalues()メソッドが存在している。itervalues()メソッドは、変換しない、それは反復プロセス値から除去辞書順次、itervaluesので()メソッドの比の値()メソッドは、リストを生成するために必要なメモリを節約します。

           我々は通常のケアを内部反復使用していないどのようにしながら、Pythonでは、forループの繰り返しオブジェクトがリスト、タプル、STR、ユニコード、辞書などよりもはるかに作用することができる、任意のオブジェクトは、forループの反復に基づいて行動することができます。オブジェクトは、彼らがイテレーションと言うことができるならば、我々はそれを見ることができるループの反復のために直接行く、反復が抽象データ操作で、それはオブジェクト内の反復データは、すべての要求を持っていません。

    キーと値のdictの8.4イテレーション

          まず、オブジェクトを変換するための項目()メソッドはdictのは、我々はこのリストに反復、リストのタプルが含まなった、あなたは同時にキーと値を取得することができます。および値())(itervaluesを有している。同様に、項目())(iteritemsを有し、iteritems()辞書のリストに変換しないように対応するが、絶えず反復プロセスでタプルを与え、従って、iteritems()になりません追加のメモリ。

9.リスト式

     9.1。リスト[1、2、3、4、5、6、7、8、9、10]を生成するために、我々は、範囲(1、11)を使用することができます。しかし、あなたは[1x1の、2x2の、3x3の、...、10×10]行う方法を生成したい場合は?第1のループ方法:

>>> L = [] 
>>>範囲のX(1、11)のための:
... L.append(X * X)
>>> L 
[1、4、9、16、25、36、49、 64、81、100]

しかし、サイクル複雑すぎ、及び式のリストは、上記のリストに線ループ文の結果で置き換えることができる、そのようなアプローチは、特定の式のPythonのリストということです。

>>> [X * xの範囲でX(1、11)] 
[1、4、9、16、25、36、49、64、81、100]

        9.2。複雑な式

                ループ反復の反復のための通常のリストだけではなくを使用して、あなたは、反復のdictもできます。以下の辞書を仮定します。

          D = { 'アダム' 95、 'リサ':85 'バート':59}

                 HTMLテーブルにそれを回すために、複雑な数式を通じてリストを生成することができます:

TDS = [ '<TR> <TD>%S </ TD> <TD>%S </ TD> </ TR>' %(名前、スコア)名、d.iteritemsにおけるスコア()] 
印刷「<テーブル> ' 
印刷'<TR> <目>名前</> <番目のスコア>目</目> <TR>' 
印刷' \ n'.join(TDS)
印刷'</テーブル>'

                 注:文字列が指定されたパラメータを用いて、%の%sの代替をフォーマットすることができます。文字列をjoin()メソッドは文字列のリストにまとめることができます。htmlファイルとして結果を印刷、保存、ブラウザで効果を見ることができます。

        9.3条件フィルタ

               裁判官場合は、リストのための式は、ループバック追加することができます。例えば:>>> [X * xの範囲でX(1、11)]

          [1、4、9、16、25、36、49、64、81、100]

        9.4多層式

               ループはネストすることができるため、従って、式のリストに、それはまた、リストを生成する多層ループのために使用することができます。文字列「ABC」と「123」のために、2つのループは、完全な配列を生成するために使用することができる。>>> [M + n「は123」でnの「ABC」におけるM用】

【 'A1'、 'A2'、 'A3'、 'B1'、 'B2'、 'B3'、 'C​​1'、 'C​​2'、 'C​​3']

               このようなループコードに変換:

L = [] 
'ABC'内のmについて:
    '123'におけるnの:
        L.append(M + N)

おすすめ

転載: www.cnblogs.com/sccd/p/10147320.html