作者previa (.)
看板Python
標題[問題] print(something,end='') and scope for loop
時間Sun Apr 4 00:06:33 2010
不好意思,遇到了兩個問題想請教大家..
1.在以下的code中,我發現output並不如我想像中先print出processing
然後在依序print出.,最後print出ok。反而是直接印出全部,可以請
問一下,這段code如果要達成我要的目的,需要再做什麼改變嗎@@?
print('processing',end='')
for i in range(0,10):
time.sleep(0.1)
print('..',end='')
print('ok')
2.在for loop中,針對loop的變數做更改,再該次interation結束後,
仍然不會有任何的改變,如下會print出00234,而非我想要的0000....
可以請教一下原因嗎?
for i in range(0,5):
if(i==1):
i=i-1
print(i,end="")
謝謝大家@@
--
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.115.52.8
※ 編輯: previa 來自: 140.115.52.8 (04/04 00:10)
→ mules:2.i不是跳出迴圈的判斷條件 04/04 01:24
推 mules:1.第一個好像會先等一下,然後在一次印出來 04/04 01:28
→ Sforever:2. 會先buff在stdout, 加一行stdout.flush() 04/04 10:28
→ Sforever:1. for i in range(0,5)的意思是 i= 0,1,2,3,4 04/04 10:30
→ Sforever:你可以改用 list = [0,] * 5; for i in list 04/04 10:32
→ previa:原來如此 感謝大家 ^^ 04/05 00:24
→ previa:沒有找到sys.stdout.flush() 起問該怎麼知道sys.stdout有 04/05 00:25
→ previa:哪些method可以使用呢?找不大到 04/05 00:26
推 Sforever:dir(sys.stdout) 04/05 13:09
→ Sforever:他應該是一個file type的變數 04/05 13:10
→ previa:謝謝,了解了:) 04/07 09:04