hb是什么| wrangler是什么牌子| 真好是什么意思| 积家手表什么档次| 鼻涕有血丝是什么原因| 什么样的嘴巴| 杏仁有什么作用和功效| 人武部是干什么的| 肚脐下面疼是什么原因| 美女指什么生肖| 眼皮老跳是什么原因| 红米是什么米| 情绪波动大是什么原因| tpa是什么意思| 什么的绿毯| 牙龈疼痛吃什么药| 7月26日是什么日子| 阁五行属什么| 二次元是什么| 儿童口腔溃疡用什么药| 脚背发麻是什么原因引起的| 老婆子是什么意思| 立冬吃什么| 孢子是什么| 赵丽颖的真名叫什么| soso是什么意思| 八面玲珑是什么意思| 心脏在什么位置| 正常人为什么传导阻滞| 最贵的烟是什么牌子| 中管干部是什么级别| ige高是什么意思| 小儿电解质补给液有什么作用| 01年属什么的| 部署是什么意思| 巴氏征阳性是什么意思| 脱臼是指什么从什么中滑脱| 练深蹲有什么好处| 众矢之的是什么意思| bees是什么意思| 普通门诊和专家门诊有什么区别| 血小板为什么会减少| 神经性耳鸣吃什么药| 康妇炎胶囊主治什么| 6541是什么药| 咳嗽吐白痰吃什么药| 喉咙发炎吃什么药| 黄山四绝指的是什么| 人为什么会哭| 吗丁啉是什么药| 褐色分泌物是什么原因引起的| 女的右眼跳代表什么| 贫血缺什么元素| 屁多不臭是什么原因| 7月5日是什么星座| gbd是什么意思| 杨梅是什么季节的水果| 肩周炎是什么症状| 迎春花什么时候开| 发烧吃什么药退烧快| 手掌心有痣代表什么| 十二指肠霜斑样溃疡是什么意思| 养老院靠什么挣钱| 走路脚后跟疼是什么原因| 血压高有什么表现| 属鸡的守护神是什么菩萨| 什么的面目| 拉肚子应该吃什么药| 女人每天喝什么最养颜| 双花红棍是什么意思| 文武双全是什么意思| 岗位性质指的是什么| 火牛命五行缺什么| 心脏痛什么原因| 鲢鱼吃什么食物| 打冷是什么意思| 生物闹钟是什么意思| 无花果什么时候成熟| 男生的鸡鸡长什么样| 什么是相位| 救赎什么意思| 绿壳鸡蛋是什么鸡生的| 什么是童子| 胎位左枕前是什么意思| 基佬是什么意思| 怀孕乳头会有什么变化| 属龙本命佛是什么佛| 母胎solo是什么意思| 角膜炎用什么眼药水| 肝实质回声增强是什么意思| eligible是什么意思| 平安夜做什么| 吃什么补钾最快| 烧心胃酸吃什么药| 韧带拉伤用什么药好| 什么什么什么花的成语| 谷丙转氨酶偏高说明什么原因| 什么地眨眼| 日语莫西莫西什么意思| 2016年是什么生肖| 女朋友的妹妹叫什么| 直肠脱垂有什么症状| 玖字五行属什么| 省公安厅副厅长是什么级别| 四月初四是什么节日| 妈妈是什么| 酸中毒是什么意思| 女娲用什么补天| 李思思为什么离开央视| 眼花视力模糊是什么原因引起的| 天启是什么意思| 老人头晕挂什么科| 为什么会有盆腔炎| 青梅竹马什么意思| 苦衷是什么意思| 低血钾吃什么补上来的快| 潜叶蝇打什么药效果好| 什么什么无比| 阑尾炎挂什么科| 请丧假需要什么证明| 肺肿了是什么病严重吗| 只吐不拉是什么原因| 男性睾丸疼痛什么原因| 心心相印是什么生肖| 桃子什么季节成熟| 戊申五行属什么| 规培是什么意思| 晏字五行属什么的| 炖羊骨头放什么调料| 什么叫211大学| 趴在桌子上睡觉有什么坏处| 桑黄是什么东西| 娇妻是什么意思| 提手旁有什么字| 瑄五行属什么| 是什么符号| babycare是什么牌子| 消化道出血有什么症状| 小螃蟹吃什么食物| 什么时候泡脚效果最好| 无可厚非什么意思| 减肥吃什么食物| 露酒是什么| 脸发红发痒是什么原因| qq会员有什么用| 没吃多少东西但肚子很胀是什么| 风湿病是什么引起的| 脑管瘤的症状是什么| 祛是什么意思| 炖鸡肉放什么调料| 氨基丁酸是什么| 越五行属性是什么| 4月19是什么星座| 援交是什么意思| 1919年属什么生肖| 肾虚吃什么药好| 医学ca是什么意思| 单立人加吉念什么| 就让我爱你把你捧在手心里是什么歌| 腿肚子抽筋是什么原因| 梦见自己输液是什么意思| 为什么会打哈欠| 怼怼是什么意思| 蔑视是什么意思| 动物园里面有什么动物| 小孩风热感冒吃什么药| lbl是什么意思| 梦见自己死了是什么预兆| 清奇是什么意思| 急性阴道炎是什么引起的| 人为什么要抽烟| 杞人忧天是什么故事| 秒后面是什么单位| 肺纹理增粗是什么意思| 11点到12点是什么时辰| 脚气用什么药| 喜欢白色的女人是什么性格| 两个百字念什么| 羊肉水饺配什么菜好吃| 五月10号是什么星座| 撸铁是什么意思| vegan是什么意思| 什么水果含维生素b| 不想吃饭是什么原因| 阴对什么| 归宁是什么意思| 金字旁有什么字| edf是什么意思| 泌乳是什么意思| 什么是扦插| 木薯淀粉是什么做的| 乘风破浪什么意思| 月经不能吃什么水果| 结扎挂什么科| 精子是什么样的| 六味地黄丸是治什么病| 核磁共振挂什么科| 低血压吃什么食物好| 提拔是什么意思| gt是什么意思| 搏击是什么运动| 冰箱发烫是什么原因| 酒糟鼻子是什么原因引起的| 鸿字五行属什么| 手淫过度吃什么药调理| 小孩老咳嗽是什么原因| 天相是什么意思| 补肾虚吃什么药最好| 124是什么意思| 十月十六号是什么星座| 意尔康属于什么档次| 乙肝全是阴性是什么意思| 左侧头疼是什么原因| 鸡蛋炒什么好吃| 什么止疼药见效最快| 蚊子代表什么生肖| 乳酸杆菌大量是什么意思| 什么是党的性质和宗旨的体现| 硕字五行属什么| 菊花脑是什么菜| 小便绿色是什么原因| 汗管瘤什么原因造成| 老年人腿脚无力是什么原因| hpa是什么意思| 肠套叠是什么意思| 梦见家里死人了代表什么预兆| 奢侈的近义词是什么| 月经量特别少是什么原因| 什么是卵巢囊肿| 七月二十是什么星座| 蚰蜒吃什么| 酒石酸是什么| 什么样的眼睛形容词| 右眼皮跳是什么预兆女| 干燥综合症吃什么药| 梦见苹果是什么意思| 鹿晗的原名叫什么| 鳄鱼的天敌是什么| 胎停了有什么明显症状| 苍蝇吃什么| 雾化是什么| 紫色是什么颜色| 包块是什么| 宫外孕术后可以吃什么| 霍金什么时候去世| 双子座的幸运色是什么| 内科是看什么病的| 正月初一是什么生肖| 小狗得细小是什么症状| 低密度脂蛋白偏低是什么意思| 红黑相间的蛇是什么蛇| 玫瑰花泡茶有什么功效| 眉毛少是什么原因| 凿壁偷光是什么意思| 股癣用什么药| 八月十五是什么星座| 左肾积水有什么症状| 西瓜坏了是什么样| 降血脂吃什么食物| t细胞是什么| 城隍爷是什么神| 2034年是什么年| 查岗是什么意思| abr是什么检查| 百度

美国六位大使公开信:别把亚太领袖地位让给中国

文章介绍了Python的for语句作为循环机制,它遍历序列成员,可用于列表解析和生成器表达式。for循环自动调用迭代器的next()方法,处理StopIteration异常。文中通过示例展示了for循环如何遍历字符串、列表和元组,并提到了通过序列项、索引和enumerate()函数的迭代方式。此外,还讲解了迭代器、range()函数以及xrange()函数的用法,强调了range()在内存效率上的优势。最后提到了与序列相关的内建函数如sorted()、reversed()、enumerate()和zip()。
百度 而马英九办公室前副秘书长罗智强认为,台湾地区领导人蔡英文在2010、2012、2016年选举公报中,也都未揭露其“宇昌公司董事长”经历,也涉犯“使公务员登载不实”的“伪造文书罪”,决定仿效办理,今早也赴台北地检署告发蔡英文,强调“以其人之道还治其人之身”。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

for 语句

?Python 提供给我们除了while循环语句的另一个循环机制就是 for 语句. 它提供了 Python 中最强大的循环结构. 它可以遍历序列成员, 可以用在 列表解析 和 生成器表达式中, 它会自动地调用迭代器的 next() 方法, 捕获 StopIteration 异常并结束循环(所有这一切都是在内部发生的). 如果你刚刚接触Python 那么我们要告诉你, 在以后你会经常用到它的. 和传统语言(例如 C/C++ , Fortran, 或者 Java )中的 for 语句不同, Python 的 for 更像是 shell 或是脚本语言中的 foreach 循环。

一般语法

?for 循环会访问一个可迭代对象(例如序列或是迭代器)中的所有元素, 并在所有条目都处理过后结束循环. 它的语法如下:

for iter_var in iterable: 
 suite_to_repeat

?每次循环, iter_var 迭代变量被设置为可迭代对象(序列, 迭代器, 或者是其他支持迭代的对象)的当前元素, 提供给 suite_to_repeat 语句块使用。

用于序列类型

本文章中我将用 for 循环迭代不同的序列对象. 样例将涵盖字符串, 列表, 以及元组。

>>> for eachLetter in 'Names': 
... print 'current letter:', eachLetter 
... 
current letter: N 
current letter: a 
current letter: m 
current letter: e 
current letter: s

?当迭代字符串时, 迭代变量只会包含一个字符(长度为 1 的字符串). 但这并不常用。在字符串里中查找字符时, 程序员往往使用 in 来测试成员关系, 或者使用 string 模块中的函数以及字符串方法来检查子字符串。
?看到单个的字符在一种情况下有用,即在通过 print 语句调试 for 循环中的序列时, 如果你在应该看到字符串的地方发现的却是单个的字符, 那么很有可能你接受到的是一个字符串, 而不是对象的序列.
?迭代序列有三种基本方法:
?通过序列项迭代

>>> nameList = ['Walter', "Nicole", 'Steven', 'Henry'] 
>>> for eachName in nameList: 
... print eachName, "Lim" 
... 
Walter Lim 
Nicole Lim 
Steven Lim 
Henry Lim

?在上面的例子中, 我们迭代一个列表. 每次迭代, eacgName 变量都被设置为列表中特定某个元素.
?然后我们在代码块中打印出这个变量.
?通过序列索引迭代

>>> nameList = ['Cathy', "Terry", 'Joe', 'Heather', 
'Lucy'] 
>>> for nameIndex in range(len(nameList)): 
... print "Liu,", nameList[nameIndex] 
... 
Liu, Cathy 
Liu, Terry 
Liu, Joe 
Liu, Heather 
Liu, Lucy

?我们没有迭代元素, 而是通过列表的索引迭代.
?这里我们使用了内建的 len() 函数获得序列长度, 使用 range() 函数(我们将在下面详细讨论它)创建了要迭代的序列.
?使用项和索引迭代
?两全其美的办法是使用内建的 enumerate() 函数, 它是 Python 2.3 的新增内容. 代码如下:

>>> nameList = ['Donn', 'Shirley', 'Ben', 'Janice', 
... 'David', 'Yen', 'Wendy'] 
>>> for i, eachLee in enumerate(nameList): 
... print "%d %s Lee" % (i+1, eachLee) 
... 
1 Donn Lee 
2 Shirley Lee 
3 Ben Lee 
4 Janice Lee 
5 David Lee 
6 Yen Lee 
7 Wendy Lee

用于迭代器类型

?用 for 循环访问迭代器和访问序列的方法差不多. 唯一的区别就是 for 语句会为你做一些额外的事情. 迭代器并不代表循环条目的集合.

?迭代器对象有一个 next() 方法, 调用后返回下一个条目. 所有条目迭代完后, 迭代器引发一个 StopIteration 异常告诉程序循环结束. for 语句在内部调用 next() 并捕获异常.

?使用迭代器做 for 循环的代码与使用序列条目几乎完全相同. 事实上在大多情况下, 你无法分辨出你迭代的是一个序列还是迭代器, 因此,这就是为什么我们在说要遍历一个迭代器时,实际上可能我们指的是要遍历一个序列,迭代器,或是一个支持迭代的对象(它有 next()方法)

range() 内建函数

?我们前面介绍 Python 的 for 循环的时候提到过它是一种迭代的循环机制. Python 同样提供一个工具让我们在传统的伪条件设置下使用 for 声明, 例如从一个数字开始计数到另外个数字, 一旦到达最后的数字或者某个条件不再满足就立刻退出循环.

?内建函数 range() 可以把类似 foreach 的 for 循环变成你更加熟悉的语句. 例如从 0 到 10 计数, 或者从 10 到 100 一次递增 5 .

? range() 的完整语法
?Python 提供了两种不同的方法来调用 range() . 完整语法要求提供两个或三个整数参数:
?range(start, end, step =1)
?range() 会返回一个包含所有 k 的列表, 这里 start <= k < end , 从 start 到 end , k 每次递增 step . step 不可以为零,否则将发生错误.

>>> range(2, 19, 3) 
[2, 5, 8, 11, 14, 17]

?如果只给定两个参数,而省略 step, step 就使用默认值 1 .

>>> range(3, 7) 
[3, 4, 5, 6]

?我们来看看解释器环境下的例子

>>> for eachVal in range(2, 19, 3): 
... print "value is:", eachVal 
... 
value is: 2 
value is: 5 
value is: 8 
value is: 11 
value is: 14 
value is: 17

?我们的循环从 2 “数” 到 19 , 每次递增 3 . 如果你对 C 熟悉的话, 你会发现,range()的参数与 C 的 for 循环变量有着直接的关系:

/* equivalent loop in C */ 
for (eachVal = 2; eachVal < 19; eachVal += 3) { 
 printf("value is: %d\n", eachVal); 
}

?虽然看起来像是一个条件循环(检查 eachVal< 19 ), 但实际上是 range() 先用我们指定的条件生成一个列表, 然后把列表用于这个 for 语句.
?range() 简略语法
?range() 还有两种简略的语法格式:
?range(end)
?range(start, end)
?我们看到过最短的语法 接受一个值, start 默认为 0 , step 默认为 1 , 然后 range()返回从 0 到 end 的数列.

>>> range(5) 
[0, 1, 2, 3, 4]

?range() 的中型版本和完整版本几乎完全一样, 只是 step 使用默认值 1 . 现在我们在 Python 解释器中试下这条语句:

>>> for count in range(2, 5): 
... print count 
... 
2 
3 
4

?核心笔记: 为什么 range() 不是只有一种语法?
?你已经知道了 range() 的所有语法, 有些人可能会问一个挑剔的问题, 为什么不把这两种语法合并成一个下面这样的语法?
?range(start=0, end, step =1) # 错误
?这个语法不可以使用两个参数调用. 因为 step 要求给定 start . 换句话说, 你不能只传递 end 和 step 参数. 因为它们会被解释器误认为是 start 和 end .

xrange() 内建函数

?xrange() 类似 range() , 不过当你有一个很大的范围列表时, xrange() 可能更为适合, 因为它不会在内存里创建列表的完整拷贝. 它只被用在 for 循环中, 在 for 循环外使用它没有意义。同样地, 你可以想到, 它的性能远高出 range(), 因为它不生成整个列表。在 Python 的将来版本中, range() 可能会像 xrange() 一样, 返回一个可迭代对象(不是列表也不是一个迭代器) 。

与序列相关的内建函数

?sorted(), reversed(), enumerate(), zip()
?下边是使用循环相关和序列相关函数的例子. 为什么它们叫"序列相关"呢? 是因为其中两个函数( sorted() 和 zip() )返回一个序列(列表), 而另外两个函数( reversed() 和 enumerate() ) 返回迭代器(类似序列)

>>> albums = ('Poe', 'Gaudi', 'Freud', 'Poe2') 
>>> years = (1976, 1987, 1990, 2003) 
>>> for album in sorted(albums): 
... print album, 
... 
Freud Gaudi Poe Poe2 
>>> 
>>> for album in reversed(albums): 
... print album, 
... 
Poe2 Freud Gaudi Poe 
>>> 
>>> for i, album in enumerate(albums): 
... print i, album 
... 
0 Poe 
1 Gaudi 
2 Freud 
3 Poe2 
>>> 
>>> for album, yr in zip(albums, years): 
... print yr, album 
... 
1976 Poe 
1987 Gaudi 
1990 Freud 
2003 Poe2

?我们已经涵盖了 Python 中的所有循环语句, 下面我们看看循环相关的语句, 包括用于放弃循环的 break 语句, 和立即开始下一次迭代的 continue 语句.

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

心无旁骛~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值
长史相当于现在什么官 天蝎是什么象星座 脂肪瘤看什么科 腰上长痘痘是什么原因 患得患失什么意思
反流性食管炎b级是什么意思 面部痒是什么原因 我战胜了什么 嗓子哑是什么原因 阴道炎什么症状
来月经吃什么对身体好 月经期肚子疼是什么原因 头皮发白是什么原因 手淫有什么危害 十指连心是什么意思
什么是雌激素 狗狗能吃什么水果 桢字五行属什么 盆腔积液是什么症状 捐肾对身体有什么影响
lga肾病是什么意思hcv9jop4ns0r.cn 胎位lsa是什么意思1949doufunao.com Fine什么意思中文wmyky.com 什么的乌鸦hcv8jop0ns7r.cn 多吃醋有什么好处和坏处hcv8jop3ns1r.cn
香菇配什么菜炒着好吃shenchushe.com 筒骨炖什么好吃hcv9jop6ns6r.cn 煮虾放什么调料hcv9jop0ns8r.cn tct是什么hcv8jop4ns3r.cn 什么好hcv9jop5ns1r.cn
为什么井盖是圆的xinjiangjialails.com 孕妇能吃什么hcv9jop7ns2r.cn 梦见别人怀孕了是什么意思hcv8jop3ns3r.cn 血糖高适合吃什么食物hcv8jop0ns3r.cn 人类的祖先是什么动物xinjiangjialails.com
狗狗产后吃什么下奶多hcv9jop5ns0r.cn 社保断交有什么影响shenchushe.com 嗔恨是什么意思hcv8jop0ns9r.cn 跳蚤的天敌是什么hcv8jop9ns7r.cn 自投罗网是什么意思cl108k.com
百度