2015-05-29 20 views
8

Tôi đã cố gắng đọc một char từ bảng điều khiển trong PyCharm (mà không cần nhấn enter), nhưng không có kết quả. Các chức năng msvcrt.getch() dừng mã, nhưng không phản ứng với phím bấm (thậm chí nhập), và msvcrt.kbhit() luôn trả về 0. Ví dụ này in đang không có gì:PyCharm: msvcrt.kbhit() và msvcrt.getch() không hoạt động?

import msvcrt 
while 1: 
    if msvcrt.kbhit(): 
     print 'reading' 
print 'done' 

Tôi đang sử dụng Windows 7, PyCharm 3.4 (các cùng một heppens trong nhàn rỗi).

Điều gì là sai? Có cách nào khác để chỉ đọc đầu vào mà không cần nhập?

+1

Cùng một vấn đề ở đây. Dường như không có cách nào để nắm bắt một phím bấm bên trong bàn điều khiển Run. Tôi thực sự hy vọng ai đó giải quyết vấn đề này. – GrizzlyGuru

+0

Tương tự ở đây, 'key = msvcrt.getch()' không hoạt động trong PyCharm 5.0.4. – Danijel

+1

Tôi đã yêu cầu bộ theo dõi intellij để sửa lỗi đó. Nếu bạn muốn nó quá, bạn có thể upvote vấn đề ở đây: https://youtrack.jetbrains.com/issue/PY-21240 –

Trả lời

2

Có thể ở chế độ đặc biệt của cửa sổ Run.

  • Kiểm tra hộp kiểm Emulate terminal in output console thiết lập trong Run/Debug Configurations
Các vấn đề liên quan