pythonif循環(huán)-創(chuàng)新互聯(lián)

x = 'spam'
while x:
print(x, end=' ')
x = x[1:] # spam pam am m

創(chuàng)新互聯(lián)是一家集成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)、網(wǎng)站頁(yè)面設(shè)計(jì)、網(wǎng)站優(yōu)化SEO優(yōu)化為一體的專業(yè)網(wǎng)站建設(shè)公司,已為成都等多地近百家企業(yè)提供網(wǎng)站建設(shè)服務(wù)。追求良好的瀏覽體驗(yàn),以探求精品塑造與理念升華,設(shè)計(jì)最適合用戶的網(wǎng)站頁(yè)面。 合作只是第一步,服務(wù)才是根本,我們始終堅(jiān)持講誠(chéng)信,負(fù)責(zé)任的原則,為您進(jìn)行細(xì)心、貼心、認(rèn)真的服務(wù),與眾多客戶在蓬勃發(fā)展的市場(chǎng)環(huán)境中,互促共生。

break 跳出最近所在的循環(huán)

continue 跳到所在循環(huán)的開(kāi)頭處

pass 啥都不做

def func():
pass

def func():
...

continue 跳到所在循環(huán)的開(kāi)頭處

x = 10
while x:
x = x-1
if x % 2 ==0:continue
print(x, end=' ') # 9 7 5 3 1

#判斷是不是質(zhì)數(shù)
#x = y //2
#while x > 1:

if y % x == 0:

print(y, 'has factor', x)

break

x -= 1

#else:

print(y, 'is prime')

for i in 'spam':
print(i, end='') # spam

sum = 0
for i in [1, 2, 3]:
sum += i
print(sum) # 6

sum = 1

for i in [1, 2, 3, 4]:sum *= i
print(sum) # 24

#for循環(huán)中的元組賦值和解包

for (i, j) in ((1, 2),(3, 4)): # 1 2
print(i, j) # 3 4

d = {'a':1,'b':2,'c':3} # 'a' 1
for i in d: # 'b' 2
print(i, d[i]) # 'c' 3

for (i, j) in d.items(): # 'a' 1
print(i, j) # 'b' 2

'c' 3

t = [(1, 2), (3, 4), (5, 6)]
for both in t: # 1, 2
a, b = both # 3, 4
print(a, b) # 5, 6

for ((a, b), c) in [((1, 2),3), ((4, 5), 6)]: # 1 2 3
print(a, b, c) # 4 5 6

for ((a, b), c) in [((1, 2),3), ('xy', 6)]: # 1 2 3
print(a, b, c) # x y 6

a, *b, c = (1, 2, 3, 4)
print(a, b, c) # 1 [2, 3] 4

for (a, *b, c) in [(1, 2, 3, 4), (5, 6, 7, 8)]:
print(a, b, c)

1 [2, 3] 4

5 [6, 7] 8

items = ['aaa', 111, (4, 5), 2.01]
tests = [(4, 5), 3.14]
for key in tests:
for item in items:
if item == key:
print(key, 'was found')
break
else:
print(key, 'not found')

(4, 5) was found

3.14 not found

for key in tests:
if key in items:
print(key, 'was found')
else:
print(key, 'not found')

(4, 5) was found

3.14 not found

#編寫(xiě)循環(huán)技巧

for比while容易些,執(zhí)行也比較快。

#靈活使用range, range在py3 中是迭代器

print(range(5)) # range(0, 5)
print(list(range(5))) # [0, 1, 2, 3, 4]

l = [1, 2, 3, 4, 5]
for x in l:
x += 1
print(l) # [1, 2, 3, 4, 5]

這或許和你想象的不太一樣,因?yàn)樾薷牡氖茄h(huán)變量x, 而不是列表。

#每次經(jīng)過(guò)循環(huán)時(shí), x會(huì)引用從列表中取出來(lái)的下一個(gè)整數(shù)。

比如第一輪迭代 x是1, 下次一次迭代, 循環(huán)主體把x設(shè)為不同的對(duì)象,

#也就是2, 但是沒(méi)更新1所來(lái)自的那個(gè)列表

l = [1, 2, 3, 4, 5]
for i in range(len(l)):
l[i] += 1

print(l) # [2, 3, 4, 5, 6]

更簡(jiǎn)便的便是用列表解析, 并且運(yùn)行的更快

print([i+1 for i in [1, 2, 3, 4, 5]])

[2, 3, 4, 5, 6]

#并行遍歷,zip 和 map

zip會(huì)取得一個(gè)或多個(gè)序列為參數(shù),然后返回元組的列表。將這些序列中的并排的

#元素配成對(duì)

l1 = [1, 2, 3, 4]
l2 = [5, 6, 7, 8]

print(zip(l1, l2)) # <zip object at 0x00000000032C34C8>
print(list(zip(l1, l2))) # [(1, 5), (2, 6), (3, 7), (4, 8)]

for (x, y) in zip(l1, l2):
print(x, y, '-->', x+y)

1 5 --> 6

2 6 --> 8

3 7 --> 10

4 8 --> 12

s1 = 'abc'
s2 = 'xyz123'

#print(list(map(None, s1, s2)))

python2 中運(yùn)行將會(huì)為較短的序列用None來(lái)補(bǔ)齊

[('a', 'x'), ('b', 'y'), ('c', 'z'), (None, '1'), (None, '2'), (None, '3')]

print(list(map(ord, 'spam'))) # [115, 112, 97, 109]

#用zip構(gòu)造字典

k = ['spam', 'eggs', 'toast']
v = [1, 3, 5]
print(list(zip(k, v)))
d = {}

[('spam', 1), ('eggs', 3), ('toast', 5)]

for i, j in zip(k, v):
d[i] = j
print(d)

{'spam': 1, 'eggs': 3, 'toast': 5}

其實(shí)也可以用zip來(lái)創(chuàng)建字典

k = ['spam', 'eggs', 'toast']
v = [1, 3, 5]
d = dict(zip(k, v))
print(d)
{'spam': 1, 'eggs': 3, 'toast': 5}

用enumerate來(lái)產(chǎn)生偏移和元素

s = 'spam'
for i, j in enumerate(s):
print(i,'-->',j)

0 --> s

1 --> p

2 --> a

3 --> m

enumerate函數(shù)返回一個(gè)生成器對(duì)象,可以通過(guò)next調(diào)用。

e = enumerate('spam')
print(e)

<enumerate object at 0x000000000301E0D8>

#這個(gè)對(duì)象有個(gè)next方法,可以在每次迭代的時(shí)候返回一個(gè)元組,
#可以在for中循環(huán)通過(guò)元組賦值將運(yùn)算解包
print(next(e))
print(next(e))
print(next(e))

(0, 's')

(1, 'p')

(2, 'a')

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

新聞名稱:pythonif循環(huán)-創(chuàng)新互聯(lián)
網(wǎng)站URL:http://bm7419.com/article18/dpoegp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁(yè)設(shè)計(jì)公司網(wǎng)站內(nèi)鏈、微信小程序、做網(wǎng)站、定制開(kāi)發(fā)、靜態(tài)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名