Python循環

Python循環

Python循環

while
#語法:
while condition:
block #當條件滿足即condition為True,進入循環體,執行block
#舉例:
flag=10
while flag:
print(flag)
flag -= 1
#如果flag=-10:
flag=-10
while flag:
print(flag)
flag += 1
for
for element in itratable:
block #當迭代對象中有元素可以迭代,進入循環體,執行block
range函數
前包后不包range(10) 從0開始不包括末尾的10
for i in range(10):
print(i+1)
#倒敘打印
for i in range(10,0,-1):
print(i)
continue
[中斷當前循環的當次執行,繼續下一次循環]
#舉例:計算10以內的偶數
#方法1
for i in range(0,11,2):
if i != 0:
print(i)
#方法2:
for i in range(11):
if i%2 == 0 and i != 0:
print(i)
break
[終止bread所在整個循環]
#測試break范圍:
for i in range(2):
for j in range(10):
if j < 2:
print(j)
else:
break
print(“aaa”)
0
1
aaa
0
1
aaa `由此結果證明break范圍為所在循環`
練習:
#給定一個不超過5位的正整數,判斷其有幾位,依次打印出個位、十位、百位、千位、萬位的數字
Input_Num=int(input(“Please input integer number:”))
for i in range(len(Input_Num)): #取出數字長度決定循環次數
n=Input_Num%10 #將最后一位取出
Input_Num//=10 #將取出后的剩余數字賦值
print(n) #打印最后一位
y=int(input(“hehhe:”))#邏輯與上面for循環類似
Num_len=4
while Num_len != 0:
n=y%10
y//=10
print(n)
Num_len-=1
循環else字句:
如果循環正常的執行結束,就執行else字句,如果使用break終止,else字句不會執行
#語法:
while condition:
block
else:
block
for element in iteratable:
blcok
else:
block
help(函數名稱)[]help(range)],查看函數幫助
練習
  • 打印一個邊長為n的正方形
print(6*”*”)
for i in range(4):
print(“*” + 4*” ” + “*”)
print(6*”*”)
  • 打印菱形
n=3
for i in range(1,8,2):
print(n*” “,i*”*”)
n-=1
n=1
for x in range(5,0,-2):
print(n*” “,x*”*”)
n+=1
  • 求100以內所有奇數的和
n=0
for i in range(1,100):
if i%2 != 0:
n+=i
print(n)
  • 求1到5階乘之和
a=1
b=0
for i in range(1,6):
a *= i #將階乘結果賦予a
b += a #將每個階乘的結果累加賦予b
pirnt(b)
  • 給一個數,判斷它是否是素數(質數):一個大于1的自然數只能被1和它本身整除
m=int(input(“please input >1 number:”))
for i in range(2,m):
if m%i == 0:
print(“No”)
break
else:
print(“Yes”)
  • 打印九九乘法表
for i in range(1,10):#循環9列
for j in range(1,10):#每行打印結果循環
if j <= i:#判斷打印區間
print(j,”*”,i,”=”,j*i, end = ” “)
print(” “)
  • 打印100以內的斐波那契數列
a=0
b=1
while True:
x=a+b
if x<100:
print(x)
else:
break
a=b
b=x
  • 求斐波那契數列第101項
a=0
b=1
c=0
while True:
x=a+b
a=b
b=x
c+=1#計數器
if c == 100:
print(x)
break
  • 求10萬內的所有素數
import datetime
starttime = datetime.datetime.now()
for i in range(2,100000):
for x in range(2,i):
if i%x==0:
break
else:
print(i)
endtime = datetime.datetime.now()
print (endtime – starttime,”.seconds”)

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/87371

(6)
Thunk_LeeThunk_Lee
上一篇 2017-09-18 15:32
下一篇 2017-09-18 16:09

相關推薦

  • 通過paramiko模塊遠程抓取日志

        最近一直在學習python,可是工作中一直缺少機會用到這塊功能.最近接到一個需求需要拉取6臺客戶端的某一天jetty日志.因為jetty的日志是保存在jetty的log目錄下,以yyyy_mm_dd.stderrout.log的形式保存,所以我們只要創建一個腳本,傳入需要查詢日志的日期和需要查詢日志的主機IP及…

    Python干貨 2016-01-16
  • 面向對象之魔術方法

    特殊屬性 屬性 含義 __name__ 類、函數、方法的名稱 __module__ 類定義所在的模塊名 __class__ 對象或類所屬的類 __bases__ 類的基類的元組,順序為它們在基類列表中出現的順序 __doc__ 類、函數的文檔字符串,若沒定義則為None __mro__ 類的mro,方法查找順序 __dict__ 類或實例的屬性,可寫的字典 …

    2018-05-20
  • Python第十二周學習總結

    Git的使用

    2018-05-27
  • 類的繼承

    Edit 類的繼承 基本概念 面向對象三要素之一,繼承Inheritance 舉例: 人類和貓類都繼承自動物類 個體繼承自父母,繼承了父母的一部分特征,但也可以有自己的個性 在面向對象的世界中,以父類繼承,就可以直接擁有父類的屬性和方法,這樣可以減少代碼、多復用。子類可以定義自己的屬性和方法 class Animal: def shout(self): pr…

    2017-11-15
  • 通過堡壘機代理SSH運行Ansible(譯)

    有一種常見的網絡安全模式是阻止私有網絡外部對應用服務器的所有連接(指除了業務數據外其它的連接,如后臺管理系統和內部業務系統。譯者注),然后使用 DMZ 區域中的 堡壘機 來選擇性的將到服務器的流量加入白名單。 我們有這樣的一個服務器池,只允許來自特定 IP 地址的 SSH 流量。這些服務器還由 Ansible…

    Linux干貨 2015-02-14
  • 函數

    函數,函數參數,參數解構,作用域,遞歸函數,匿名函數以及生成器的基本概念。

    2017-10-17
欧美性久久久久