python式

7571 ワード

Pythonの式の書き方はC/C++と似ています.ただ、いくつかの書き方に違いがあります.
  • の主な算術演算子はC/C++と類似している.+, -, *, /, //, **, ~, %は、加算または正、減算または負、乗算、除法、整除、乗方、補正、型取りをそれぞれ表す.>>, <<は右シフトと左シフトを表します.&, |, ^は、バイナリのAND, OR, XOR演算を表す.>, =は、2つの式の値を比較するために使用され、それぞれ、より大きい、より小さい、等しい、等しくない、より小さい、より大きいを表す.これらの演算子では、~, |, ^, &, <>を整数に適用する必要があります.
  • Pythonは、andornotを使用して論理演算を表す.
  • is, is notは、2つの変数が同じオブジェクトであるかどうかを比較するために使用される.in, not inは、1つのオブジェクトが別のオブジェクトに属しているかどうかを判断するために使用される.
  • Pythonは、辞書、集合、リストの導出式(dict comprehension, set comprehension, list comprehension)をサポートする.例えば:
  • >>> [x + 3 for x in range(4)]
    [3, 4, 5, 6]
    >>> {x + 3 for x in range(4)}
    {3, 4, 5, 6}
    >>> {x: x + 3 for x in range(4)}
    {0: 3, 1: 4, 2: 5, 3: 6}
    
  • Pythonでは、0-9の平方和:
  • を計算するなど、「反復式」(generator comprehension)がサポートされています.
    >>> sum(x * x for x in range(10))
    285
    
  • Pythonは、lambdaを使用して匿名関数を表す.匿名関数体は式のみです.例えば:
  • >>> add = lambda x, y : x + y
    >>> add(3, 2)
    5
    
  • Pythonは、y if cond else xを使用して条件式を表す.condが真である場合、式の値はyであり、そうでない場合、式の値はxであることを意味する.C++とJavaのcond?y:xに相当します.
  • Python区分リスト(list)とタプル(tuple)の2種類.Listの書き方は[1,2,3]で、tupleの書き方は(1,2,3)です.リストの要素は変更できますが、tupleは変更できません.場合によってはtupleのカッコは省略できます.tupleは付与文に対して特別な処理がある.したがって、
  • などの複数の変数に同時に値を割り当てることができる.
    >>> x, y=1, 2 #   x,y  ,    :x=1, y=2
    

    特に、2つの変数の値は、以下の形式で交換することができる.
    >>> x, y = y, x #    :y=1, x=2
    
  • Python使用'(一重引用符)と"(二重引用符)に表示されます.Perl、Unix Shell言語またはRuby、Groovyなどの言語とは異なり、2つの記号の役割は同じです.一般的に、文字列に二重引用符が現れた場合、単引用符を使用して文字列を表す.逆に二重引用符を使用します.いずれも現れなければ、個人の好みで選択します.文字列に表示される(反スラッシュ)は、
    が改行を表すなどの特殊な文字として解釈される.式の前にrを付けると、Pythonは文字列に表示されるを説明しないことを示します.この書き方は、通常、正規表現またはWindowsファイルパスを記述するために使用されます.
  • Pythonはリストカット(list slices)をサポートし、完全なリストの一部を取得することができます.切断操作をサポートするタイプはstr, bytes, list, tupleなどである.その文法は...[left:right]または...[left:right:stride]です.nums変数の値が[1, 3, 5, 7, 8, 13, 20]であると仮定すると、次の文は真である:
  • nums[2:5] == [5, 7, 8]は、下付き2の要素から下付き5の要素に切断されるが、下付き5の要素は含まれない.
  • nums[1:] == [3, 5, 7, 8, 13, 20]最後の要素に切断されます.
  • nums[:-3] == [1, 3, 5, 7]最初の要素から最後から3番目の要素まで切断されます.
  • nums[:] == [1, 3, 5, 7, 8, 13, 20]は、すべての要素を返します.新しいリストを変更してもnumsには影響しません.
  • nums[1:5:2] == [3, 7]は、下付き1の要素から下付き5の要素に切断するが、下付き5の要素は含まれず、ステップ長は2
  • である.