まとめDay 5_ブランチ

7279 ワード

====Python分岐構造if====
 pythonのブランチ構造はif文のみswitchなし
1.ifはいつ使う必要がありますか
  あること(あるコードを実行する)をするには、ある条件を満たす必要がある場合はifを使用することを考慮します.
2.ifの使い方
フォーマット1:if
a.構文:  if条件文:   コードセグメント1
b.説明:  if-キーワードは、意味条件文-いずれかの結果のある文であれば、最良の結果はブールであり、ブール値でなければ、判断時にブールコロンとインデントの組み合わせは、コードセグメントコードセグメント1−とifがインデントされた文を保持するように形成される.1行の文でも複数行の文でも構いません
c.実行過程:  まず条件文の結果がTrueであるかどうかを判断し、Trueであればコードセグメント1を実行し、その後他の文を実行し、Falseであればコードセグメント1を実行しない.if以外の文を直接実行
age = 26
if age >= 18:
    print('        ')
    print('      ')     #  if         ,    if            
print('================')    #    if         ,            

まとめ:ある条件を満たす必要がある文はifに書き、条件が満たされるかどうかにかかわらず文を実行し、ifの外に書く
#   :     ,    3  ,   :'XXX 3   '
"""
num = int(input('    :'))
if num % 3 == 0:
    print('%d 3   ' %(num))

"""
フォーマット2:if-else構造
a.文法:  if条件文:   コードセグメント1  else:   コードセグメント2  その他の文
b.説明: else-キーワード、固定書き方;そうでなければif条件を満たさない他の場合に相当する
c.実行プロセス:  まず条件文がTrueであるかどうかを判断し、Trueである場合はコードセグメント1を実行し、そうでない場合はコードセグメント2を実行する
#   :      ,           ‘xx   ’,     ‘xx   ’
num2 = int(input('       :'))
if num % 2 == 0:
    print('%d   '%(num))  #        
else:
    print('%d   '%(num))  #        
print('=============')      #        
#   :       ,               ,                      
str = input('     :')
f_str = str[0]
s_str = str[1:]
if f_str.islower():
    print(f_str.upper() + s_str)
else:
    print(str)

構造3:if-elif-else構造
a.文法:  if条件文1:   コードセグメント1  elif条件文2:   コードセグメント2  elif条件文3:  コードセグメント3  ... elif条件文n:  コードセグメントn else:  コードセグメントn+1 その他の文
b.説明: elif-キーワード;前の条件が満たされていないことを前提に、他の条件が満たされているか否かを判断する
c.実行プロセス:  まず条件文1が成立するかどうかを判断し、直接実行コードセグメント1が成立した場合、if構造全体が終了し、その後、他の文を実行する.条件文が成立しなければ、条件文2を判断し、成立すれば直接コードセグメント1を実行し、if構造全体が終了し、その後、他の文を実行する.このように,条件文が成立しない場合,elseの後のコードセグメントn+1を実行する.
注意:  a.後の条件文の判断はすべて前の条件文が成立しない前提で実行する b.elseは必ずしも書く必要はなく、elseは省略できる場合がある
salary = 20000
if salary <= 5000:
    print('   !')
elif salary <= 10000:
    print('   !')
elif salary <= 15000:
    print('   !')
else:
    print('   !')
print('    ,    !!!')
#   :
str = '''
========================================
          '
     
        1.     
        2.     
        3.       
        4.     
        5.   
========================================'''
print(str)

num = int(input('   (1-5):'))
print('========================================')
if num == 1:
    print('     、  、  ')
elif num == 2:
    print('           ')
elif num == 3:
    print('            ')
elif num == 4:
    print('             ')
else:
    print('    ')
print('========================================')

補足:Pythonでは、3重引用符または3重引用符で文字列を表すことができます.
===if適用====
1.ifのネスト
  if結果にifをネストすることもできます
 :     ,        ,  ‘x   ’,         4  ,    ,   ‘x 4   ’
#         ‘x   ’
num = int(input('     :'))
if num % 2 == 0:
    # if    if,if     (else      if,else     )
    if num % 4 == 0:
        print('%d   ,  4   ' %(num))
    else:
        print('%d   ,   4   ' %(num))
else:
    if num % 5 == 0:
        print('%d   ,  5   ' %(num))
    else:
        print('%d   ,   5   ' %(num))

2.三項演算子
  C/JAVA/JS三目演算子:式?値1:値2->式の値がTrueであるかどうかを判断し、式全体の結果をTrueとし、値2->Pythonの3つの演算子:値1 if式else値2->式の値がTrueであるかどうかを判断し、3つの演算子Trueを使用して式全体の結果を1とし、値2としない
#              ,          
"""
num1, num2 = 10, 100
max = num1 if num1 > num2 else num2
print(max)
  :      ,            。 ,      ,      ‘    ’
year = int(input())
if (year % 4 ==0 and year % 100 != 0) or year % 400 == 0:
    print('%d    ' %year)
else:
    print('%d     ' %year)

===forループ====
pythonのループ構造には、forループとwhileループの2つがあります.
1.forサイクル
a.文法:Pythonのシーケンスは、文字列、リスト、辞書、集合、メタグループ、range、ジェネレータ、反復器コロンのある場所にインデント
c.実行プロセス(重要!)
for char in 'abc':
    print('===')
    print(char)

  第1サイクル:char='a'print('===')print('char') 第1サイクル:char='b'print('===')print('char') 第1サイクル:char='c'print('=')print('char')print('char')
#   :      'hosee 23jh!hs89_=sssAsK',               
str = 'hosee 23jh!hs89_=sssAsK'
sum = 0
for i in str:
    # isnumeric()         
    if i.isnumeric():
    # if 'A' <= i <= 'Z':
        sum += 1
print('        %s '%sum)

2.range関数
  range(N)->デジタルシーケンス0~N-1(Nは正の整数でなければならない)->range(M,N)->デジタルシーケンスM~N-1(M,Nは整数でなければならず、NはMより大きくなければならない)->range(M,N,step)->Mから、毎回step値にstepを加えて次の数字をNの前まで生成する.(M,Nは整数でなければならない)
for num in range(10):
    print('num:', num)
# 1+2+3+...+100
l_num = int(input('    :'))
sum = 0
for i in range(l_num):
    sum += i
print(sum)
#   : 100      13  7      
sum = 0
for num in range(100):
    if num % 13 == 0 or num % 7 == 0:
        sum += num
print(sum)

3.文字列の下を巡回することにより便利な文字列
#               
str1 = 'hello python!'
for index in range(len(str1)):
    print(str1[index], end='')

===whileサイクル===
1.while
a.文法...の場合条件文-if後の条件文と同じ(賦値文はだめ、他の文も可)  :-固定書き方  循環体-繰り返し実行する必要がある文は循環体に書く;循環体とwhileは1つのインデントc.実行過程 プログラムがwhile循環に実行するとまず条件文がTrueであるかどうかを判断し、Trueのために1回循環体を実行し、循環体を実行してから条件文がTruであるかどうかを判断するe,Trueのためにまた循環体を実行する...このように,判定文の条件はFalseであり,ループが終了し,ループ体を直接実行した後の文であることが分かる.
forとwhileの選択b.サイクル回数決定b.サイクル数不確定
#    
while True:
    print(input('  :'))
#  while       
str = 'hello python!'
num = 0
while num < len(str):
    print(str[num])
    num += 1 
#   :     ,       。     'end'   
"""
while True:
    result = input('    :')
    if result == 'end':
        break
result = input('  :')
while result != 'end':
    result = input('  :')
#   :      ,           。      6 
password = input('    :')
while len(password)<6:
    print('        ,    ')
    password = input('  :')
print('      !')

=====ループキー====
  else、break、continue """
1.continue
  continueはPythonキーワードで、循環体でしか使えません!机能:  実行循环体到continue时,结束当次循环,直接进入下次循环的判断.(forループは変数を次の値に戻すことであり、whileループはwhileの後の条件文がTrueであるかどうかを直接判断することである)
2.break
  breakはPythonのキーワードで、循環体の中でしかありません!
機能:  が循環体を実行する時、break循環が直接終了することに出会って、直接循環体の後ろのその他の文を実行します
#     111           17    
num = 111
while True:
    if num % 17 == 0:
        print('==========')
        print(num)
        break
    num += 1

3.else
 for変数inシーケンス:    循環体 else  コードセグメント
 while条件文:break終了に遭遇した場合は実行されません