Python程序中for循环用法详解

Python程序中for循环用法详解

一个通用的序列迭代器,用于遍历任何有序的序列对象内的元素,可用于字符串、元组、列表和其它内置可迭代对象,以及通过类所创建的新对象。

1、for循环语法格式:

for expression in object:

       for_suite

else:

       else_suite

2、for语法格式扩展:

for expression in object:

      for_suite

      if boolean_expression2: continue

            if boolean_expression3: break

else:

      else_suite

3、用法示例:

例1:for循环基本用法示例

In [1]: url = 'web2.field.com'

In [2]: for x in url:

  .....:     print x,

  .....:    

w e b 2 . f i e l d . c o m

In [3]: l1 = [1,2,3,4]

In [4]: for i in l1:

  .....:     print i,

  .....:    

1 2 3 4

例2:for-else用法示例

In [5]: for x in url:

   print x,

else:

   print "\n" +"Game Over!"

  ....:    

w e b 2 . f i e l d . c o m

Game Over!

例2:for-if-else-else用法示例

In [19]: for i in l1:

   print i

       if i == 3:

            print "i = 3"

       else:

            print "i != 3"

   else:

       print "Show End"

  ....:    

1

i != 3

2

i != 3

3

i = 3

4

i != 3

Show End

4、for循环练习

练习1:逐一分开显示指定字典d1中的所有元素

In [214]: print d1

{0: 'Sun', 1: 'Mon', 2: 'Tue', 3: 'Wed', 4:'Thu', 5: 'Fri', 6: 'Sat'}

In [215]: d1.items()

Out[215]:

[(0, 'Sun'),

 (1,'Mon'),

 (2,'Tue'),

 (3,'Wed'),

 (4,'Thu'),

 (5,'Fri'),

 (6,'Sat')]

In [216]: for (k,v) in d1.items():

  .....:     print k,v

  .....:    

0 Sun

1 Mon

2 Tue

3 Wed

4 Thu

5 Fri

6 Sat

练习2:逐一显示列表中l1=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]中的索引为奇数的元素;

In [219]: l1=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]

In [220]: range(1,10,2)

Out[220]: [1, 3, 5, 7, 9]

In [221]: for i in range(1,len(l1),2):

  .....:     print l1[i]

  .....:    

Mon

Wed

Fri

练习3:将属于列表l1=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],但不属于列表l2=["Sun","Mon","Tue","Thu","Sat"]的所有元素定义为一个新列表l3;

In [225]:l2=["Sun","Mon","Tue","Thu","Sat"]

In [226]:l2=["Sun","Mon","Tue","Thu","Sat"]

In [227]: for i in l1:

  .....:     if i not in l2:

  .....:         l3.append(i)

  .....:        

In [228]: print l3

['Wed', 'Fri']

练习4:已知列表namelist=['stu1','stu2','stu3','stu4','stu5','stu6','stu7'],删除列表removelist=['stu3', 'stu7', 'stu9'];请将属于removelist列表中的每个元素从namelist中移除(属于removelist,但不属于namelist的忽略即可);

In [229]: namelist=['stu1','stu2','stu3','stu4','stu5','stu6','stu7']

In [230]: removelist=['stu3', 'stu7','stu9']

In [231]: for i in namelist:

  .....:     if i in namelist:

  .....:         namelist.remove(i)

  .....:        

In [232]: print namelist

['stu2', 'stu4', 'stu6']

练习5、自定义整数列表,修改列表,令列表中每个元素加1

In [235]: l1 = [3,4,56,8,2,9]

In [236]: for i in range(len(l1)):

  .....:     l1[i]+=1

In [237]: print l1

[4, 5, 57, 9, 3, 10]

练习6:l1 = [1,2,3,4,5,6,7];l2 = ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],构造字典d1= {...}

In [238]: l1 = [1,2,3,4,5,6,7];l2 =["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]

In [239]: zip(l1,l2)

Out[239]:

[(1, 'Sun'),

 (2,'Mon'),

 (3,'Tue'),

 (4,'Wed'),

 (5,'Thu'),

 (6,'Fri'),

 (7,'Sat')]

In [240]: for (k,v) in zip(l1,l2):

  .....:     d1[k] = v

  .....:    

In [241]: print d1

{0: 'Sun', 1: 'Sun', 2: 'Mon', 3: 'Tue', 4:'Wed', 5: 'Thu', 6: 'Fri', 7: 'Sat'}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值