python

python 循环语句

2018-10-22  本文已影响2人  hiekay

在python中,循环有一个语句:for语句。
简单的for循环例子

>>> hello = "world"
>>> for i in hello:
...     print i
...
w
o
r
l
d

上面这个for循环是怎么工作的呢?

顺便补充一个print的技巧,上面的打印结果是竖着排列,也就是每打印一个之后,就自动换行。如果要让打印的在一行,可以用下面的方法,在打印的后面加一个逗号(英文)

>>> for i in hello:
...     print i,
...
w o r l d

>>> for i in hello:
...     print i+",",    #为了美观,可以在每个字符后面加一个逗号分割
...
w, o, r, l, d,
>>>

因为可以通过使用索引编号(偏移量)做为下标,得到某个字符。所以,还可以通过下面的循环方式实现上面代码中同样功能:

>>> for i in range(len(hello)):
...     print hello[i]
...
w
o
r
l
d

其工作方式是:

以上的循环举例中,显示了对字str的字符依次获取,也涉及了list,感觉不过瘾呀。那好,看下面对list的循环:

>>> ls_line = ['Hello', 'I am hiekay', 'Welcome you', '']
>>> ls_line
['Hello', 'I am hiekay', 'Welcome you', '']
>>> for word in ls_line:
...     print word
...
Hello
I am hiekay
Welcome you

>>> for i in range(len(ls_line)):
...     print ls_line[i]
...
Hello
I am hiekay
Welcome you

for

一般化的公式,可以这么表示:

for 循环规则:
    操作语句

例子:找出100以内的能够被3整除的正整数。

分析:这个问题有两个限制条件,第一是100以内的正整数,根据前面所学,可以用range(1,100)来实现;第二个是要解决被3整除的问题,假设某个正整数n,这个数如果能够被3整除,也就是n%3(%是取余数)为0.那么如何得到n呢,就是要用for循环。

image

下面写代码就是按图索骥了。

代码:

#! /usr/bin/env python
#coding:utf-8

aliquot = []

for n in range(1,100):
    if n%3 == 0:
        aliquot.append(n)

print aliquot

结果:

[3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48, 51, 54, 57, 60, 63, 66, 69, 72, 75, 78, 81, 84, 87, 90, 93, 96, 99]
上一篇 下一篇

猜你喜欢

热点阅读