Изменение цвета текста при печати - PullRequest
0 голосов
/ 17 февраля 2020

В настоящее время я разрабатываю простую игру и пытаюсь изменить цвет указанных c вещей, которые печатаю. Я уже скачал модуль colorama и запустил свой код, используя пример, который я нашел в Интернете, но это не работает (подробности я расскажу позже). Мне известно о настройке параметров Python, но это влияет на весь текст, а не на c разделы. Если это помогает, мой компьютер запускает Windows, а я запускаю Python 3.8. Вот код установки, а через несколько строк - код, который у меня есть в отдельном файле. Через несколько строк выводится:

from setuptools import setup, find_packages

name = 'colorama'
version = '0.1'

def get_long_description(filename):
    readme = join(dirname(__file__), filename)
    return open(readme).read()


setup(
    name=name,
    version=version,
    description="Cross-platform colored terminal text.",
    long_description=get_long_description('README.txt'),
    keywords='color colour terminal text ansi windows crossplatform xplatform',
    author='Jonathan Hartley',
    author_email='tartley@tartley.com',
    url='http://code.google.com/p/colorama/',
    license='BSD',
    packages=find_packages(exclude=['ez_setup', 'examples', 'tests']),
    include_package_data=True,
    zip_safe=True,
    install_requires=[
      # -*- Extra requirements: -*-
    ],
    entry_points="""
# -*- Entry points: -*-
    """,
    classifiers=[
        'Development Status :: 2 - Pre-Alpha',
        'Environment :: Console',
        'Intended Audience :: Developers',
        'License :: OSI Approved :: BSD License',
        'Operating System :: OS Independent',
        'Programming Language :: Python :: 2.6',
        'Topic :: Terminals',
    ]
    # see classifiers http://pypi.python.org/pypi?%3Aaction=list_classifiers
)



import colorama
from colorama import Fore, Style
print(Fore.BLUE + "Hello World")



[34mHello World

Ответы [ 2 ]

0 голосов
/ 17 февраля 2020

вам нужно позвонить init() куда-нибудь после импорта колорамы и до того, как вы напечатаете строку с цветом. например:

import colorama
from colorama import Fore, Style
init()
print(Fore.BLUE + "Hello World")
0 голосов
/ 17 февраля 2020

В документации говорится, что вам нужно начать с вызова функции init()

Приложения должны инициализировать Colorama с помощью:

   from colorama import init 
   init()

, что имеет следующий эффект

При Windows вызов init() отфильтрует escape-последовательности ANSI из любого текста, отправленного на stdout или stderr, и заменит их эквивалентными вызовами Win32.

это именно то, что вы видите, это происходит с вами, потому что вы видите [34m в начале.

...