1. 程式人生 > 實用技巧 >[PyTorch 學習筆記] 7.3 使用 GPU 訓練模型

[PyTorch 學習筆記] 7.3 使用 GPU 訓練模型

迴圈結構

  • while迴圈
  • do...while迴圈
  • for迴圈
  • 在Java5中引入了主要用於陣列的增強型for迴圈

while迴圈

  • while是最基本的迴圈,它的結構為:

    while(布林表示式){
        //迴圈內容
    }
    
  • 只要布林表示式為true,迴圈就會一直執行下去。

  • 大多數情況是會讓迴圈停止下來,需要一個讓表示式失效的方式來結束迴圈。

  • 少部分情況迴圈一直執行,例如伺服器的請求響應監聽等。

  • 迴圈條件一直未true就會造成無限迴圈【死迴圈】,正常的業務程式設計中應該儘量避免死迴圈。會影響程式效能或者造成程式卡死崩潰!

  • 計算1+2+3+......+100=?

do...while迴圈

  • 對於while語句,如果不滿足條件,則不能進入迴圈。但有時需要即使不滿足條件,也至少執行一次。

  • do...while迴圈和為了迴圈類似,不同的是,do...while迴圈至少會執行一次。

    do {
        //程式碼語句
    }while(布林表示式);
    
  • While和do...While的區別:

    1. while先判斷後執行。do while是先執行後判斷!
    2. Do...while總是保證迴圈體會被至少執行一次!這是他們的主要差異。

For迴圈

  • 雖然所有迴圈結構都可以用while或者do...whild表示,但Java提供了另一種語句--for迴圈,使一些迴圈結構變得更加簡單。

  • for迴圈語句是支援迭代的一種通用結構,是最有效、最靈活的迴圈結構。

  • for迴圈執行的次數是在執行前就確定的。語法格式如下:

    for(初始化;布林表示式;更新){
        //程式碼語句
    }
    

練習1:計算0到100之間的奇數和偶數的和

練習2:用whlie或for迴圈輸出1-1000之間能被5整除的數,並且每行輸出3個

練習3:列印九九乘法表

增強for迴圈

  • Java5 引入了一種主要用於陣列或集合的增強型for迴圈

  • Java增強for迴圈語法格式如下:

    for(宣告語句:表示式)
    {
        //程式碼句子
    } 
    
  • 宣告語句:宣告新的區域性變數,該變數的型別必須和陣列元素的型別匹配。其作用域限定在迴圈語句塊,其值與此時陣列元素的值相等。

  • 表示式:表示式是要訪問的陣列名,或者是返回值為陣列的方法。