本文概述
通常,For循环用于顺序遍历。它属于确定迭代的范畴。确定迭代意味着预先明确指定重复的次数。
注意:
在python中, for循环仅实现基于集合的迭代。
for循环
For循环用于顺序遍历。例如:遍历列表, 字符串或数组等。在Python中, 没有C样式的循环, 即for(i = 0; i <n; i ++)。有一个" for in"循环, 与其他语言中的每个循环类似。让我们学习如何将in循环用于顺序遍历。
语法如下:
for var in iterable:
# statements
这里的iterable是对象的集合, 例如list, tuple。 for循环内的缩进语句对迭代器中的每个项目执行一次。每次循环时, 变量var都会获取下一个可迭代项的值。
例子:
# Python program to illustrate
# Iterating over a list
print ( "List Iteration" )
l = [ "geeks" , "for" , "geeks" ]
for i in l:
print (i)
# Iterating over a tuple (immutable)
print ( "\nTuple Iteration" )
t = ( "geeks" , "for" , "geeks" )
for i in t:
print (i)
# Iterating over a String
print ( "\nString Iteration" )
s = "Geeks"
for i in s :
print (i)
# Iterating over dictionary
print ( "\nDictionary Iteration" )
d = dict ()
d[ 'xyz' ] = 123
d[ 'abc' ] = 345
for i in d :
print ( "% s % d" % (i, d[i]))
输出如下:
List Iteration
geeks
for
geeks
Tuple Iteration
geeks
for
geeks
String Iteration
G
e
e
k
s
Dictionary Iteration
xyz 123
abc 345
for循环的工作:
循环控制语句
循环控制语句从其正常顺序更改执行。当执行离开作用域时, 在该作用域中创建的所有自动对象都将被销毁。 Python支持以下控制语句。
继续声明:
它将控件返回到循环的开头。
# Prints all letters except 'e' and 's'
for letter in 'lsbin' :
if letter = = 'e' or letter = = 's' :
continue
print ( 'Current Letter :' , letter)
var = 10
输出如下:
Current Letter : g
Current Letter : k
Current Letter : f
Current Letter : o
Current Letter : r
Current Letter : g
Current Letter : k
中断声明:
它使控制脱离了循环。
for letter in 'lsbin' :
# break the loop as soon it sees 'e'
# or 's'
if letter = = 'e' or letter = = 's' :
break
print ( 'Current Letter :' , letter)
输出如下:
Current Letter : e
通过声明:
我们使用pass语句编写空循环。 Pass还用于空的控制语句, 函数和类。
# An empty loop
for letter in 'lsbin' :
pass
print ( 'Last Letter :' , letter)
输出如下:
Last Letter : s
range()函数
range()是Python的内置函数。当用户需要执行特定次数的操作时使用它。 Python(3.x)中的range()只是一个名为的函数的重命名版本
xrange()
在Python(2.x)中。 range()函数用于生成数字序列。
简单来说, range()允许用户在给定范围内生成一系列数字。根据用户传递给该函数的参数数量, 用户可以决定该系列数字在何处开始和结束以及一个数字与next数字之间的差值有多大。range()主要采用三个参数。
- 开始:整数, 从该整数开始返回整数序列
- 停:整数, 在该整数之前要返回整数序列。
整数范围在停止处结束– 1。
- 步骤如下:整数值, 确定序列中每个整数之间的增量
# Python Program to
# show range() basics
# printing a number
for i in range ( 10 ):
print (i, end = " " )
print ()
# using range for iteration
l = [ 10 , 20 , 30 , 40 ]
for i in range ( len (l)):
print (l[i], end = " " )
print ()
# performing sum of first 10 numbers
sum = 0
for i in range ( 1 , 10 ):
sum = sum + i
print ( "Sum of first 10 numbers :" , sum )
输出如下
0 1 2 3 4 5 6 7 8 9
10 20 30 40
Sum of first 10 numbers : 45
注意:
进一步了解range()
点击这里
.
else循环
在大多数编程语言(C / C ++, Java等)中, 使用if条件语句限制了else语句的使用。但是Python还允许我们将else条件与for循环一起使用。
注意:
仅当循环未由break语句终止时, 才在for / while之后执行else块。
# Python program to demonstrate
# for-else loop
for i in range ( 1 , 4 ):
print (i)
else : # Executed because no break in for
print ( "No Break\n" )
for i in range ( 1 , 4 ):
print (i)
break
else : # Not executed as there is a break
print ( "No Break" )
输出如下:
1
2
3
No Break
1
注意:
进一步了解for-else循环
点击这里
.
注意怪胎!巩固你的基础Python编程基础课程和学习基础知识。
首先, 你的面试准备可通过以下方式增强你的数据结构概念:Python DS课程。