>>hello="world">>>foriinhello:...printi...world上面這個(gè)for循環(huán)是怎么工作的呢?hello這個(gè)變量引用的是"world"這個(gè)str類型的數(shù)據(jù)變量i通過hello找到它所引用的"world",然后從第一字符開始,依次獲得該字符的引用。當(dāng)i="w"的時(shí)候,執(zhí)行printi,打印出了字母w,結(jié)束之后循環(huán)第二次,讓i="e",然后執(zhí)行printi,打" />

亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

跟老齊學(xué)Python之畫圈還不簡(jiǎn)單嗎?

系統(tǒng) 1886 0

在python中,循環(huán)有一個(gè)語(yǔ)句:for語(yǔ)句。

簡(jiǎn)單的for循環(huán)例子

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

          

上面這個(gè)for循環(huán)是怎么工作的呢?

hello這個(gè)變量引用的是"world"這個(gè)str類型的數(shù)據(jù)
變量 i 通過hello找到它所引用的"world",然后從第一字符開始,依次獲得該字符的引用。
當(dāng) i="w"的時(shí)候,執(zhí)行print i,打印出了字母w,結(jié)束之后循環(huán)第二次,讓 i="e",然后執(zhí)行print i,打印出字母e,如此循環(huán)下去,一直到最后一個(gè)字符被打印出來,循環(huán)自動(dòng)結(jié)束
順便補(bǔ)充一個(gè)print的技巧,上面的打印結(jié)果是豎著排列,也就是每打印一個(gè)之后,就自動(dòng)換行。如果要讓打印的在一行,可以用下面的方法,在打印的后面加一個(gè)逗號(hào)(英文)

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

>>> for i in hello:
...   print i+",",  #為了美觀,可以在每個(gè)字符后面加一個(gè)逗號(hào)分割
... 
w, o, r, l, d,
>>> 


          

因?yàn)榭梢酝ㄟ^使用索引編號(hào)(偏移量)做為下表,得到某個(gè)字符。所以,還可以通過下面的循環(huán)方式實(shí)現(xiàn)上面代碼中同樣功能:

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

          

其工作方式是:

len(hello)得到hello引用的字符串的長(zhǎng)度,為5
range(len(hello),就是range(5),也就是[0, 1, 2, 3, 4],對(duì)應(yīng)這"world"每個(gè)字母的編號(hào),即偏移量。
for i in range(len(hello)),就相當(dāng)于for i in [0,1,2,3,4],讓i依次等于list中的各個(gè)值。當(dāng)i=0時(shí),打印hello[0],也就是第一個(gè)字符。然后順序循環(huán)下去,直到最后一個(gè)i=4為止。
以上的循環(huán)舉例中,顯示了對(duì)字str的字符依次獲取,也涉及了list,感覺不過癮呀。那好,看下面對(duì)list的循環(huán):

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

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


          

上一個(gè)臺(tái)階

我們已經(jīng)理解了for語(yǔ)句的基本工作流程,如果寫一個(gè)一般化的公式,可以這么表示:

for 目標(biāo) in 對(duì)象:
??? 操作語(yǔ)句
用for語(yǔ)句來解決一個(gè)實(shí)際問題。

例:找出100以內(nèi)的能夠被3整除的正整數(shù)。

分析:這個(gè)問題有兩個(gè)限制條件,第一是100以內(nèi)的正整數(shù),根據(jù)前面所學(xué),可以用range(1,100)來實(shí)現(xiàn);第二個(gè)是要解決被3整除的問題,假設(shè)某個(gè)正整數(shù)n,這個(gè)數(shù)如果能夠被3整除,也就是n%3(%是取余數(shù))為0.那么如何得到n呢,就是要用for循環(huán)。

以上做了簡(jiǎn)單分析,要實(shí)現(xiàn)流程,還需要細(xì)化一下。按照前面曾經(jīng)講授過的一種方法,要畫出問題解決的流程圖。

跟老齊學(xué)Python之畫圈還不簡(jiǎn)單嗎?_第1張圖片

下面寫代碼就是按圖索驥了。

代碼:

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

aliquot = []

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

print aliquot


          

代碼運(yùn)行結(jié)果:

[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]
這里僅僅列舉一個(gè)簡(jiǎn)單的例子,看官可以在這個(gè)例子基礎(chǔ)上深入:打印某范圍內(nèi)的偶數(shù)/奇數(shù)等。


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 91精品乱码一区二区三区 | 欧美一区二区免费 | 亚洲乱视频 | 日韩欧美中文字幕在线播放 | 2021最新国产成人精品视频 | 天天射天天操天天色 | 性做爰片视频毛片 | 亚洲日本视频 | 久久精品久| 天天操人人爱 | 伊人首页 | 欧美激情精品久久久久久大尺度 | 91精品国产综合久久精品 | 欧美一级特黄乱妇高清视频 | 一级特黄aaa大片大全 | 一级黄色录像免费观看 | 国产精品久久久久一区二区三区 | 欧美久久影院 | 欧美顶级xxxxbbbb | 国产一区二区三区久久 | 99久久免费看精品国产一区 | 亚洲涩涩精品专区 | 天天草天天操 | 亚洲欧美日韩中文字幕在线 | 一区二区三区免费精品视频 | 97se亚洲综合| 久久98精品久久久久久婷婷 | 97影院理论片手机在线观看 | 久爱午夜精品免费视频 | 免费一级毛片清高播放 | 亚洲爽爽 | 天天视频国产精品 | 五月婷婷免费视频 | 亚洲另类图区 | 美女精品久久久久久国产潘金莲 | 欧美性视频一区二区三区 | 精品推荐 国产 | 久久综合久久美利坚合众国 | 午夜综合 | 成人在线免费视频播放 | 青草视频在线观看免费资源 |