> 백엔드 개발 > 파이썬 튜토리얼 > Python 중첩 루프

Python 중첩 루프

高洛峰
풀어 주다: 2016-11-23 10:55:13
원래의
2085명이 탐색했습니다.

Python 언어를 사용하면 루프 본문 내에 다른 루프를 삽입할 수 있습니다.

Python for 루프 중첩 구문:

iteration_var의 순서:

iteration_var의 순서:

Python while 루프 중첩 구문:

while 표현식:

while 표현식:

루프 본문 내에 다른 루프 본문을 포함할 수 있습니다. 예를 들어 while 루프 내에 for 루프를 포함할 수 있으며, 반대로 for 루프 내에 while 루프를 포함할 수 있습니다.

예:

1. 첫 번째 목록에서 한 번에 하나의 항목을 가져오고 두 번째 목록에서 한 번에 하나의 항목을 가져와서 새 목록에 포함합니다. 모든 조합

List1 = ['zi', 'qiang', 'xue', 'tang']

List2 = [1, 2]

new_list = []

List1의 m:

List2의 n:

new_list.append([m, n])

new_list 인쇄

결과:

[['zi', 1], ['zi', 2], ['qiang', 1], ['qiang', 2], ['xue ', 1], ['xue', 2], ['tang', 1], ['tang', 2]]

2. 목록에서 한 번에 두 개를 선택하여 모든 조합을 찾습니다

목록 = [1, 2, 3, 4, 5 ]

length = len(List)

for x in range(0, length-1):

for y in range(x+ 1, length) :

목록[x], 목록[y]

인쇄 결과:

1 2

1 3

1 4

1 5

2 3

2 4

2 5

3 4

3 5

4 5

3. 다음 예에서는 중첩 루프를 사용하여 2와 20 사이의 소수를 출력합니다.

분석: 숫자 n의 경우 1에서 n ** 0.5(근 n )가 나누어지면 n은 소수이다.

3.1 구현에 사용

# -*- 코딩: utf-8 -*-

n = 20

범위(1, n)에 있는 i의 경우:

범위(2, int(i**0.5))에 있는 j의 경우:

if i % j == 0:

break

else:

i를 인쇄하면 '소수'입니다.

3.2 while을 사용하여 구현

#!/usr/bin/python

# -* - 코딩: utf-8 -*-

i = 2

while(i < 20):

j = 2

while(j <= (i/j)):

if not(i%j): # 또는 정수 나누기를 의미하는 경우 i % j == 0이라고 씁니다.

break

j = j + 1

if (j > i/j):

print i, "is a prime number"

i = i + 1

print "Good bye!"

설명: i % j는 i를 j 이후의 나머지로 나눈 값입니다. 숫자의 경우 0에 해당하는 Boolean 값은 false이고, 그 외의 값은 true가 된다. not(i%j)는 i%j가 0일 때만 조건이 성립할 수 있다는 뜻으로, 균등하게 나눌 수 있다는 뜻이다.

위 예시 출력 결과:

2는 소수입니다

3은 소수입니다

5는 소수

7은 소수

11은 소수

13은 소수

17은 소수 번호

안녕하세요!


관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿