Mendapatkan Input Aksara Tunggal Cross-Platform
Membaca satu aksara daripada input pengguna berguna dalam pelbagai senario. Untuk mencapai matlamat ini, anda boleh menggunakan penyelesaian merentas platform berikut:
Tapak ActiveState Recipes menyediakan resipi komprehensif yang menyasarkan sistem pengendalian yang berbeza:
Windows :
Linux dan OSX:
Coretan kod yang disediakan menggambarkan pelaksanaan ini:
class _Getch: def __init__(self): try: self.impl = _GetchWindows() except ImportError: self.impl = _GetchUnix() def __call__(self): return self.impl() class _GetchUnix: def __init__(self): import tty, sys def __call__(self): import sys, tty, termios fd = sys.stdin.fileno() old_settings = termios.tcgetattr(fd) try: tty.setraw(sys.stdin.fileno()) ch = sys.stdin.read(1) finally: termios.tcsetattr(fd, termios.TCSADRAIN, old_settings) return ch class _GetchWindows: def __init__(self): import msvcrt def __call__(self): import msvcrt return msvcrt.getch() getch = _Getch()
Hanya memanggil getch() akan memberi anda satu aksara tanpa sebarang penimbalan atau bergema ke terminal.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membaca Aksara Tunggal daripada Input Pengguna Cross-Platform?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!