Birinin konsolda sözcük yazmasını ve "sekme" tuşuna bastığında bir listeden otomatik tamamlanmasını istiyorum. Ancak, raw_input
, biri [Enter] 'a gelene kadar bir dize döndürmez.Python raw_input olsun, ancak dize bittiğinde el ile karar verin
Kullanıcı [Enter] 'a gelene kadar karakterleri bir değişkede nasıl okurum?
* Not: OS sorunları nedeniyle otomatik tamamlama için import readline
kullanmak istemiyorum. sys.stdin
üzerinde * nix kullanım select
günü
Kesinlikle doğru cevap. Sorunun, terminalin varsayılan olarak “pişmiş” modda olması (basit satır düzenlemeye izin verilmesi) ve tuşlara yazılanları almak için “ham” modda yerleştirilmesi gerektiği şeklinde düzenleme yapmak isteyebilirsiniz. Ve bu noktada, sorucu aynı zamanda kötü yazım ve OS'nin genellikle onlar için yaptığı diğer şeyler hakkında endişelenmek zorundadır. –