(三)学習ノート:pythonのデータ型、オペレータ、プロセス制御

4550 ワード

一.ディクショナリ辞書
構文形式:{キー:値}(キー値ペア)インスタンス:
mydict = {'name':'  ', 'age':18}

ディクショナリの値の追加:ディクショナリに存在しないキーを追加すると追加されます.
myDict = {'name':'  '}
myDict['age'] = 18  #  age:18,   myDict 

ディクショナリの値の変更:フィールドにすでに存在するキーに新しい値を割り当てると、キーキーキーの値が変更されます.
myDict = {'name':'  '}
myDict['name'] = '  '  #   key name       

ディクショナリ値の削除ディクショナリ値の削除ディクショナリ内の値の削除は、ディクショナリ内の唯一のキーによって削除されます.
myDict = {'name':'  '}
del myDict['name']  #  key name   

dict()を使用してキー値ペアのシーケンスを辞書に構築
#   dict()       
myList = [('name', 'zs'), ('age', 18), ('sex', ‘ ’)] 
myList = [{'name','zs'}, {'age', 18}, {'sex', ' '}]
myList = [['name', 'zs], ['age', 18], ['sex', ' ']]
print(dict(myList))  # {'name':'  ','age':18,'sex':' '}

注意:1>ディクショナリはマッピングタイプで、要素はキー値ペアの形式です2>ディクショナリのキーは重複しないタイプです(重複できますが、後の値は前の値を上書きします)3>空のディクショナリを作成します{}4>ディクショナリの値はインデックスのオフセットではなく、一意のkeyで取得されます.
辞書の一般的な関数
関数名
関数の説明
myDict.items()
forループでループできるリストを返します.各要素はキー値からなるメタグループです.
myDict.clear()
辞書を空にする
myDict.keys()
辞書のすべてのキーを取得
myDict.values()
辞書のすべてのキーに対応する値を取得
myDict.pop(key)
keyの対応する値をポップアップして返し、辞書が空の場合、実行はエラーを報告します.
myDict.popitem()
辞書の最後のキー値のペアがポップアップされ、メタグループとして返され、辞書が空の場合はエラーが表示されます.
myDict.copy()
辞書の浅いコピー
copy.deepcopy(myDict)
辞書のコピー
二.演算子
(一)演算子
含む:+ , - , * , / , % **:x y // ( x y , ,x y )(二)比較演算子== , != , > , = , <=
# python           
print(1<10<5)  # False
print(1 < 3 < 5)  # True 3  1   5

(三)代入演算子
pythonでの値付け演算子には、+=, -=, *=, /=, %=, **=, //=が含まれます.
(四)論理演算子
and
論理と、両側が真実であることが真実である.
a and b
or
論理か、片側が真であれば真である
a or b
not
論理的非,真は偽,偽は真
not a
例:
#        ,        
print(10 and 20)  # 20
print(10 and 0)  # 0
print(10 and False)  # False
#        ,     
print(0 and 2)  # 0
print(3>5 and 1>2)  # False
print(1<2 and 3>2)  # True     

# or   
#       ,      ,         (   )    
print(1 or 2)  #1
print(True or 5)  # True
print(0 or 2)  # 2
print(False or 0)  # 0
print('a' or 0)  # a

(五)メンバー演算子
in
指定したシーケンスで値が真を返します.
not in
値は指定したシーケンスで真を返さない
(六)アイデンティティー演算子
is
2つの識別子が同じオブジェクトを参照しているかどうかを判断します.
is not
2つの識別子が同じオブジェクトを参照していないかどうかを判断します.
例:
x = 3
y = 3
z = 4
#   id()                
print(id(x))  #          138241111
print(id(y))  #    138241111
print(id(z))  #           138241122
print(x is y)  # True
print(x is z)  # False

==isとの違い:==2つのオブジェクトが等しいかどうかを判断し、isは2つのオブジェクトが等しいかどうかを判断する(アドレス番号が同じ、同じオブジェクトを参照)
(七)ビット演算子
^
ビット別または2つが異なる場合は1
インスタンス(3番目の変数を使用せずに2つの変数の値を交換):
#   :
x = 2
y = 3
x,y = y,x 
print(x,y)  # 3 2 
#   :    
a = 2 
b = 3
a = a^b  #          0001
b = a^b  # 0010 
a = a^b  # 0011
print(a,b)  # 3 2

三.プロセスループ制御文
(一)分岐構造
1.単一分岐構造
構文:
if      :
     (      )

2.双方向分岐構造
構文:
if      :
     (      )
else:
     (      )

3.多方向分岐構造
構文:
if      :
     (      )
elif      2:
     (  2    )
elif      3:
     (  3    )
......
else:
     (      )

4.巣状分岐構造
構文:
if      :
  if      2:
        2      
  else:
        2    
else:
  if      3:
      3      
  else:
        3    

(二)循環構造
1.forサイクル
forは、文字列、リスト、メタグループ構文構造を含む任意のシーケンスを巡回できます.
for         in     :
          

注意:追加が満たされていない場合は、ループをスキップし、continue:今回のループをスキップし、次のループbreakを続行します:ループインスタンスをスキップします:
for i in range(1, 10)
    if i == 3:
      continue  #       ,        
for i in range(1,10)
    if i == 3:
      break   #     

2.whileサイクル
マスター構造:
  while      :
         

デッドサイクル
  while True:  #        
          

補足:
pythonではelseはwhile,forなどと連用できます.
while   :
       
else:
    print("         else,   for     ")