كيف يمكنني استخدام اللون مع موجه أوامر Windows باستخدام Python؟

StackOverflow https://stackoverflow.com/questions/1328643

سؤال

أحاول التصحيح القضية واف, ، حيث لا يتم ملونة إخراج موجه أوامر Windows عندما يكون من المفترض أن يكون. أحاول معرفة كيفية تنفيذ هذا التصحيح بالفعل، لكنني أواجه مشكلة في العثور على موارد كافية - هل يمكن لشخص ما أن يشيرني إلى الاتجاه الصحيح؟

تحديث 1.

من فضلك لا تقترح أي شيء يتطلب cygwin.

هل كانت مفيدة؟

المحلول

من الممكن بفضل ctypes و setconsoletextattribute.

هنا مثال

from ctypes import *
STD_OUTPUT_HANDLE_ID = c_ulong(0xfffffff5)
windll.Kernel32.GetStdHandle.restype = c_ulong
std_output_hdl = windll.Kernel32.GetStdHandle(STD_OUTPUT_HANDLE_ID)
for color in xrange(16):
    windll.Kernel32.SetConsoleTextAttribute(std_output_hdl, color)
    print "hello"

نصائح أخرى

إذا كنت تحرص على استخدام لوحات مفاتيح CMD.EXE العادية لمترجم الثيثون التفاعلي، راجع هذه الوصفة. وبعد إذا كنت موافق باستخدام Windows Simper Windows Simulating وحدة تحكم، على سبيل المثال لأنك تحتاج أيضا إلى وظيفة لعنات متقدمة على أي حال، فإن اقتراح @ Thelobster في Wcurses هو على ما يرام.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top