python 中range函數的用法


先列幾個range()函數的幾個用法:

              

函數原型:range(start, end, scan):

參數含義:

start:計數從start開始。默認是從0開始。例如range(5)等價於range(0, 5);

end:技術到end結束,但不包括end.例如:range(0, 5) 是[0, 1, 2, 3, 4]沒有5

 scan:每次跳躍的間距,默認為1。例如:range(0, 5) 等價於 range(0, 5, 1)

坑人的現象:

  1. for i in range(5):  
  2.     print i  
  3.     i += 2  
  4.     print i  
  5.     print '一輪結束'  

結果:

     

因為在for循環中,實際上是根據range的值對i進行了賦值操作,所以不論在for中如何更改i的值,在下一次循環前,i的值都會重新賦值,所以這個循環一共執行5次。

   

而不是:

    

要想獲取上面的效果,代碼如下:

 
  1. i = 0  
  2. while i < 5:  
  3.     print i  
  4.     i += 2  
  5.     print i  
  6.     print '一輪結束' 

如何利用range()獲取一個數的所有約數:

shu=10000

result=[a for a in range(1,shu+1) if shu%a==0]

print(result)

從1到10000,循環一共執行了1000次,然后進行判斷並且打印所有約數


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM