设置密码

验证码错误,请重新填写

免费建站旅程马上开始

开始建站
建站中

已有帐号?直接登录

首页>森动学院>网站建设教程 > Python之For循环的书写过程
Python之For循环的书写过程
发布时间: 2014-06-16
Python是什么?
Python(英语发音:/ˈpaɪθən/), 是一种面向对象、解释型计算机程序设计语言,由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年。Python语法简洁而清晰,具有丰富和强大的类库。它常被昵称为胶水语言,它能够很轻松的把用其他语言制作的各种模块(尤其是C/C++)轻松地联结在一起。常见的一种应用情形是,使用Python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,性能要求特别高,就可以用C++重写。

for循环是什么?
for循环是开界的。它的一般形式为: for(; <条件表达式>; ) 语句; 初始化总是一个赋值语句, 它用来给循环控制变量赋初值; 条件表达式是一个关系表达式, 它决定什么时候退出循环; 增量定义循环控制变量每循环一次后 按什么方式变化。这三个部分之间用";"分开。 例如: for(i=1; i<10时, 结束循环。

写好Python之For循环,要特别注重书写过程,从其他语言转过来的Python程序员,过去可能通常通过使用申明一个变量来跟踪遍历索引,,例如在C++:

for (int i=0; i < container.size(); ++i)
{
    // Do stuff
}
在Python,内建的enumerate函数可以扮演该角色

糟糕的
my_container = ['Larry', 'Mode', 'Curly']
index = 0
for element in my_container:
    print("{} {}".format(index, element))
    index += 1
推荐的
my_container = ['Larry', 'Mode', 'Curly']
for index, element in enumerate(my_container):
    print("{} {}".format(index, element))
使用in关键字来遍历迭代
从其他语言转来的程序员可能没有使用过 for each 风格来遍历迭代,大部分使用索引来访问元素。Python的in关键字优雅的处理该任务。

糟糕的
my_list = ['Larry', 'Moe', 'Curly']
index = 0
while index < len(my_list):
    print(my_list[index])
    index += 
推荐的
my_list = ['Larry', 'Moe', 'Curly']
for element in my_list:
    print(element)
使用else执行for遍历后执行代码
鲜为人知的是Python可以在for语言包含else子句。else子句在遍历结束后执行。除非for语句被break终端。这样允许在for没有break中执行相关代码,也就是有条件的执行。

在以下场景中,我们执行报表来检查邮箱地址是否有效(用户可注册多个邮箱)。

糟糕的
for user in get_all_users():
    has_malformed_email_address = False
    print ('Checking {}'.format(user))
    for email_address in user.get_all_email_addresses():
        if email_is_malformed(email_address):
            has_malformed_email_address = True
            print ('Has a malformed email address!')
            break
    if not has_malformed_email_address:
        print ('All email addresses are valid!
推荐的
for user in get_all_users():
    print("Checking {}".format(user))
    for email_address in user.get_all_email_addresses():
        if email_is_malformed(email_addresss):
            print("Has a malformed email address!")
            break
    else:
        print("All email addresses are valid!")


文章来源:森动网小鱼儿,转载请注明出处!

相关阅读