Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

Python - แปลง while loop เป็น for loop อย่างไร?

ใช้ count() ใน itertools module ให้ iterator ค่าที่ห่างกันเท่าๆ กัน ฟังก์ชันรับสองพารามิเตอร์ start default 0 step default 1 ใช้ default จะได้ infinite iterator ใช้ break หยุดลูป

import itertools
percentNumbers = []
finish = "n"
num = "0"
for x in itertools.count():
    num = input("enter the mark : ")
    num = float(num)
    percentNumbers.append(num)
    finish = input("stop? (y/n) ")
    if finish == 'y':
        break
print(percentNumbers)

ตัวอย่างผลลัพธ์

enter the mark : 11
stop? (y/n)
enter the mark : 22
stop? (y/n)
enter the mark : 33
stop? (y/n)
y
[11.0, 22.0, 33.0]