Home  >  Article  >  Backend Development  >  Python nested loops

Python nested loops

高洛峰
高洛峰Original
2016-11-23 10:55:131996browse

The Python language allows you to embed another loop inside a loop body.

Python for loop nested syntax:

for iterating_var in sequence:

for iterating_var in sequence:

statements(s)

statements(s)

Python while loop nesting Syntax:

while expression:

while expression:

statement(s)

statement(s)

You can embed other loop bodies within the loop body, such as in a while loop in You can embed a for loop, and conversely, you can embed a while loop within a for loop.

Example:

1. Take out one at a time from the first list, and take out one at a time from the second list, and combine them into a new list. The new list contains all combinations

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

List2 = [1, 2]

new_list = []

for m in List1:

for n in List2:

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

2. Take out two at a time from a list and find all the combinations

List = [1, 2, 3, 4, 5]

length = len(List )

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

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

print List[x], List[y]

result :

1 2

1 3

1 4

1 5

2 3

2 4

2 5

3 4

3 5

4 5

3. The following example uses a nested loop to output prime numbers between 2 and 20:

Analysis: For a number n, if the numbers from 1 to n ** 0.5 (root n) are all divisible, Then the number n is a prime number.

3.1 Use for to implement

# -*- coding: utf-8 -*-

n = 20

for i in range(1, n):

for j in range(2, int(i**0.5)):

if i % j == 0:

break

else:

print i, 'is a prime number'

3.2 Use while to Implementation

#!/usr/bin/python

# -*- coding: utf-8 -*-

i = 2

while(i < 20):

j = 2

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

if not(i%j): # Or write if i % j == 0, if it means

break

j = j + 1

if (j > i/j):

print i, "is a prime number"

i = i + 1

print "Good bye!"

Explanation: i % j means the remainder after i is divided by j. For numbers, the Boolean value corresponding to 0 is false, and other values ​​are true. not (i % j) means , and the condition can only be established when i % j is 0, which means if it can be divided integers.

The output result of the above example:

2 is a prime number

3 is a prime number

5 is a prime number

7 is a prime number

11 is a prime number

13 is a prime number

17 It’s a prime number

Good bye !

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article:Python continue statementNext article:Python continue statement