>  기사  >  백엔드 개발  >  Python 흐름 제어문 방법

Python 흐름 제어문 방법

高洛峰
高洛峰원래의
2017-03-23 17:31:361555검색

사람들은 종종 인생이 여러 가지 선택을 하는 과정이라고 말합니다. 어떤 사람들은 선택의 여지가 없고 오직 한 가지 길만 있습니다. 어떤 사람들은 더 낫고 어떤 사람들은 좋은 능력이나 좋은 가족을 선택할 수 있습니다. 배경 선택의 여지가 더 많습니다. 인생의 혼란스러운 기간 동안 맴돌며 방향을 찾지 못하는 사람들도 있습니다. 하나님을 믿는 사람에게는 하나님이 우리의 인생 길을 미리 계획해 두신 것과 같고, 당증의 스승과 제자들이 경전을 배우도록 신들이 미리 많은 어려움을 정해 놓은 것과 같습니다. 모든 것. 프로그래밍 언어는 인간 생활의 모든 측면을 시뮬레이션할 수 있습니다. 프로그래머는 프로그래밍 언어의 특수 키워드를 통해 프로그램의 실행 프로세스를 제어할 수 있습니다. 프로세스 제어 문.
프로그래밍 언어의 흐름 ​​제어문은 다음과 같은 범주로 나누어집니다.
순차문
분기문
루프문
그 중 , 순차문은 제어하기 위해 별도의 키워드가 필요합니다. 즉, 한 줄씩 실행되며 특별한 명령이 필요하지 않습니다. 여기서 주로 다룰 내용은 분기문과 루프문입니다.
1. 분기문
조건 분기문은 하나 이상의 문장(판단 조건)의 실행 결과(True/False)를 바탕으로 어떤 분기를 실행할지 결정하는 코드 블록입니다. Python에서 제공하는 분기 문은 if..else 문이며, switch..case 문은 제공되지 않습니다. if..else 문의 형태는 다음과 같습니다.
단일 분기:
if 판단 조건:
코드 블록
단일 분기 문의 코드 블록에 명령문이 하나만 있는 경우 다음과 같이 작성할 수 있습니다. if 문과 코드 같은 줄에:
if 판단 조건: 코드 한 줄
예: 지정된 uid가 루트 사용자인지 확인

uid = 0
if uid == 0:
  print("root")


다음과 같이 쓸 수도 있습니다. this:

uid = 0
if uid == 0: print("root")


출력 결과: root
이중 분기:
if 판단 조건:
코드 블록
else:
코드 블록
예: 사용자 ID를 기준으로 사용자 ID 인쇄

uid = 100
if uid == 0:
  print("root")
else:
  print("Common user")


출력 결과: 일반 사용자
다중 분기:
판정 조건 1:
코드 블록 1
elif 판단 조건 2:
코드 블록 2
...
elif 판단 조건 n:
코드 블록 n
else:
기본 코드 블록
예: 학생 점수에 따라 문자 등급 인쇄

score = 88.8
level = int(score % 10)
if level >= 10:
  print('Level A+')
elif level == 9:
  print('Level A')
elif level == 8:
  print('Level B')
elif level == 7:
  print('Level C')
elif level == 6:
  print('Level D')
else:
  print('Level E')


출력 결과: B급
설명:
위 "판정 조건"의 표현식 이 임의의 표현식 또는 임의의 유형의 데이터 객체 인스턴스일 수 있습니다. 판단 조건의 최종 반환 결과의 "true" 값이 True로 테스트되는 한, 이는 조건이 성립되고 해당 코드 블록이 실행된다는 것을 의미하며, 그렇지 않으면 조건이 성립되지 않고 다음을 의미합니다. 상태를 판단해야 합니다.
2. 루프 문
코드 문이나 코드 블록을 여러 번 실행해야 하는 경우 루프 문을 사용할 수 있습니다. Python에서 제공되는 루프 문은 while 루프for 루프입니다. Python에는 do..while 루프가 없다는 점에 유의해야 합니다. 또한 루프 실행 프로세스를 제어하는 ​​데 사용되는 여러 루프 제어 문이 있습니다: break, continue 및 통과.
1. while 루프
기본 형태
while 루프 문의 기본 형태는 다음과 같습니다.
while 판단 조건:
코드 블록
판단 조건 반환 값의 진위 여부 테스트 결과가 True이면 루프 본문의 코드가 실행되고, 그렇지 않으면 루프 본문이 종료됩니다.
예: 루프 인쇄 번호 0-9

count = 0
while count <= 9:
  print(count, end=&#39; &#39;)
  count += 1


출력 결과: 0 1 2 3 4 5 6 7 8 9
while 무한 루프
while의 판단 조건이 다음과 같은 경우 Always True이면 while 루프 본문의 코드가 영원히 반복됩니다.
while True:
print("무한 루프입니다")
출력 결과:
무한 루프입니다
무한 루프입니다
무한 루프입니다
...
이때 Ctrl + C로 작업을 종료할 수 있습니다.
while..else
문 형식:
while 판단 조건:
코드 블록
else:
코드 블록
else while 루프 내의 코드 블록은 정상적으로 실행됩니다. while 루프가 break에 의해 중단되면 else의 코드 블록은 실행되지 않습니다.
예제 1: while 루프가 정상적으로 종료됩니다(else의 문이 실행됨)

count = 0
while count <=9:
  print(count, end=&#39; &#39;)
  count += 1
else:
  print(&#39;end&#39;)


실행 결과는 다음과 같습니다: 0 1 2 3 4 5 6 7 8 9 end
예 2: while 루프가 중단됩니다(else의 문은 실행되지 않습니다)

count = 0
while count <=9:
  print(count, end=&#39; &#39;)
  if count == 5:
    break
  count += 1
else:
  print(&#39;end&#39;)


输出结果:0 1 2 3 4 5
2. for循环
for循环通常用于遍历序列(如list、tuple、range、str)、集合(如 set)和映射对象(如dict)。
基本形式
for循环的基本格式:
for 临时变量 in 可迭代对象:
代码块
实例:遍历打印一个list中的元素

names = [&#39;Tom&#39;, &#39;Peter&#39;, &#39;Jerry&#39;, &#39;Jack&#39;]
for name in names:
  print(name)


对于序列,也通过索引进行迭代:

names = [&#39;Tom&#39;, &#39;Peter&#39;, &#39;Jerry&#39;, &#39;Jack&#39;]
for i in range(len(names)):
  print(names[i])


执行结果:
Tom
Peter
Jerry
Jack
for...else
与while..else基本一致,不再赘述。
3. 循环控制语句
循环控制语句可以更改循环体中程序的执行过程,如中断循环、跳过本次循环。
循环控制语句 说明
break 终止整个循环
contine 跳过本次循环,执行下一次循环
pass pass语句是个空语句,只是为了保持程序结构的完整性,没有什么特殊含义。pass语句并不是只能用于循环语句中,也可以用于分支语句中。
实例1:遍历0-9范围内的所有数字,并通过循环控制语句打印出其中的奇数

for i in range(10):
  if i % 2 == 0:
    continue
  print(i, end=&#39; &#39;)


输出结果:1 3 5 7 9
实例2:通过循环控制语句打印一个列表中的前3个元素

names = [&#39;Tom&#39;, &#39;Peter&#39;, &#39;Jerry&#39;, &#39;Jack&#39;, &#39;Lilly&#39;]
for i in range(len(names)):
  if i >= 3:
    break
  print(names[i])


输出结果:
Tom
Peter
Jerry
4. 循环嵌套
循环嵌套是指:在一个循环体里面嵌入另一循环。
实例1:通过while循环打印99乘法表

j = 1
while j <= 9:
  i = 1
  while i <= j:
    print('%d*%d=%d' % (i, j, i*j), end='\t')
    i += 1
  print()
  j += 1


实例2:通过for循环打印99乘法表

for j in range(1, 10):
  for i in range(1, j+1):
    print('%d*%d=%d' % (i, j, i*j), end='\t')
    i += 1
  print()
  j += 1


输出结果:
1*1=1  
1*2=2   2*2=4  
1*3=3   2*3=6   3*3=9  
1*4=4   2*4=8   3*4=12  4*4=16  
1*5=5   2*5=10  3*5=15  4*5=20  5*5=25  
1*6=6   2*6=12  3*6=18  4*6=24  5*6=30  6*6=36  
1*7=7   2*7=14  3*7=21  4*7=28  5*7=35  6*7=42  7*7=49  
1*8=8   2*8=16  3*8=24  4*8=32  5*8=40  6*8=48  7*8=56  8*8=64  
1*9=9   2*9=18  3*9=27  4*9=36  5*9=45  6*9=54  7*9=63  8*9=72  9*9=81

위 내용은 Python 흐름 제어문 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.