簡體   English   中英

Python:如何使用 for 循環執行我的代碼 5 次?

[英]Python: How can I use a for loop to execute my code 5 times?

我是 python 的新手,正在研究基本函數和條件。

這是我的代碼中 1 個函數的示例:

def oddEven(oe):
    if oe % 2 == 0:
        print("number is even")
    else:
        print("number is odd")

我的代碼中總共有 3 個函數(因為不必要而省略)。 前兩個傳遞名為first的整數的值,最后一個函數接受兩個整數參數並傳遞firstsecond並檢查結果。

這是我如何回憶這些並檢查我的代碼

first = 30
second = 60
oddEven(first)
minutes(first)
relation(first, second)

說明說:

使用提供的第一個值和您選擇的第二個值運行程序五次,並檢查您的結果。 您也可以運行一次程序,然后使用for循環將代碼執行五次。

如果值是例如 23、33、14、31,我可以這樣做:

oddEven(23)
oddEven(33)
oddEven(14)
oddEven(31)

對? 然后對第二個函數和第三個函數執行相同的操作。 我怎么能為此做一個 for 循環?

這是執行此操作的簡單方法:

list_values = [22,33,14,31]

for value in list_Values:
   oddEven(value)

你是對的,你使用 for 循環來做到這一點。 以前的答案可能已經能夠遍歷 evenOdd 和 minutes 函數的列表,但它們沒有處理您比較關系函數的兩個連續值的情況。

創建一個包含 5 個數字的列表並遍歷它。 處理將兩個連續數字相互比較的情況可以通過一個簡單的 if 語句來完成,該語句在您到達列表中的第二個到最后一個元素后停止執行。

如果您還不熟悉列表,可以將它們視為數據的“容器”; 您可以一次有系統地存儲和訪問每一件作品。

代碼中發生的事情是 for 循環一次遍歷列表一個元素。 函數 range(n) 接受一個數字 n 作為參數,然后創建一個從 0 到 n - 1 的數字“范圍”。(例如 range(2) 將遍歷 for 循環 2 次,給出 ia 值第一個循環為 0,第二個循環為 1。

列表中的元素可以用這個表示法訪問:list[i],其中 i 是一個從 0 開始的數字(因此訪問列表的第一個元素),范圍一直到(列表的長度 - 1)。 因此,訪問列表中的第三個元素的方式如下:list[2]。

下面的代碼非常模塊化,因此您可以向 numbers[] 列表添加任意數量的數字,並且它應該可以工作,因為列表中的數字超過 1 個。 養成使代碼盡可能模塊化的習慣是一個很好的做法,而不是用常量進行硬編碼。 這是通過將(列表的長度)傳遞給 range() 來完成的,它允許 for 循環遍歷任何大小的列表。

如果只向列表中添加一個數字(例如 numbers = [42]),唯一會發生的事情是 if 語句中的代碼不會執行,因為它要求列表中的數字超過 1 個. 不過oddEven 和minute 函數應該仍然有效。 來試試看吧! 也嘗試將 5 個以上的數字添加到列表中。

 numbers = [23, 33, 14, 21, 42]
 
 for i in range(len(numbers)):
     first = numbers[i]  
     oddEven(first)
     minutes(first)
     if i < (len(numbers) - 1):
         second = numbers[i + 1]
         relation(first, second)

    

 
  

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM