30/09/2018, 21:36
Thắc mắc về lệnh while trong python
mình mới học lập trình, khi học đến lệnh while thì mình thắc mắc về cái điều kiện của nó,
mong các bạn giải thích giùm
cái này không chạy
while i != 0:
... i = 0
... print "daynhauhoc"
cái này chạy
i = 1
while i != 0:
... i = i - 1 # khi này i cũng bằng không
... print "daynhauhoc"
Bài liên quan
mình cũng mới bắt đầu học lập trình python. Ở vòng lặp đầu tiên (cái k chạy) bạn chưa gán giá trị cho biến i nên python k biết i trong vòng lặp là gì nên không chạy được @@ còn cái sau thì lúc đầu gán i= 1. Python ktra i khác 0? -> đúng -> chạy tiếp -> i=0-> in ra dòng kia. Sau đó ktra lại thì i=0 (k thỏa mãn dk) nên k chạy vòng lặp nữa
Bạn nghĩ đơn giản là nó không biết " i " là gì thì so sánh làm sao được.
biến i phải được khai báo trước vòng while. Nếu ko khai báo nó sẽ mặc định là chưa khai báo hoặc sẽ là giá trị null. Chính vì vậy mà đoạn code ở trên cùng không chạy.
bạn chưa khai báo biến i nên python không biết giá trị biến i nên không so sánh được -> báo lỗi