2017-01-17 26 views
10

Tôi đang làm việc trên một trò chơi dòng lệnh nhỏ trong python, nơi tôi đang hiển thị thanh tiến trình bằng mô-đun tqdm. Tôi lắng nghe đầu vào của người dùng bằng cách sử dụng mô-đun msvcrt để ngắt tiến trình. Sau khi bị gián đoạn, người dùng có thể khởi động lại bằng cách nhập 'khởi động lại' vào lời nhắc dòng lệnh. Lần thứ hai thanh tiến trình được hiển thị, thay vì cập nhật cùng một dòng với tiến trình, nó sẽ tạo ra một dòng mới mỗi lần.in tqdm vào dòng mới

Tôi làm cách nào để hiển thị tiến trình trên cùng một dòng?

Progress bar issue

Đoạn mã này minh họa việc sử dụng thanh tiến trình của tôi.

def transfer(): 
    for i in tqdm.tqdm(range(1000), desc="Transfer progress", ncols=100, bar_format='{l_bar}{bar}|'): 
     sleep(.1) 
     if msvcrt.kbhit(): 
      if msvcrt.getwche() == ' ': 
       interrupt() 
       break 

def interrupt(): 
    type("File transfer interrupted, to restart the transfer, type 'restart'") 

Trả lời

-1

Hãy thử from tqdm import tqdm_notebook as tqdm thay vì from tqdm import tqdm.

+0

thực sự? Đó là cho máy tính xách tay jupyter/ipython và thực sự không có vẻ áp dụng ở đây. –

+0

Không có gì trợ giúp.hướng dẫn vẫn còn ... – partida

Các vấn đề liên quan