Есть ли способ просто выделить определенные слова в console.js консоли? [Дубликат]

мой ответ немного запоздал, но я думаю, что позже лучше, чем никогда. Предположим, что ваш dataframe - df со столбцами Year и Quarter.

import pandas as pd
df = pd.DataFrame({'Quarter':'q1 q2 q3 q4'.split(), 'Year':'2000'})

Предположим, что мы хотим видеть фрейм данных;

df
>>>  Quarter    Year
   0    q1      2000
   1    q2      2000
   2    q3      2000
   3    q4      2000

Наконец , соедините Year и Quarter следующим образом.

df['Period'] = df['Year'] + ' ' + df['Quarter']

Теперь вы можете print df видеть результирующий фрейм.

df
>>>  Quarter    Year    Period
    0   q1      2000    2000 q1
    1   q2      2000    2000 q2
    2   q3      2000    2000 q3
    3   q4      2000    2000 q4

Если вам не нужно пространство между годом и кварталом, просто удалите его, выполнив:

df['Period'] = df['Year'] + df['Quarter']

Надеюсь, это вам поможет.

283
задан hippietrail 14 February 2013 в 14:25
поделиться

26 ответов

Ниже вы можете найти ссылку на цвет текста для команды при запуске приложения node.js:

console.log('\x1b[36m%s\x1b[0m', 'I am cyan');  //cyan
console.log('\x1b[33m%s\x1b[0m', stringToMakeYellow);  //yellow

Примечание. %s - это где в строке (второй аргумент) вводится инъекция. \x1b[0m сбрасывает цвет терминала, после этого он больше не становится выбранным цветом.

Ссылка на цвет

Reset = "\x1b[0m"
Bright = "\x1b[1m"
Dim = "\x1b[2m"
Underscore = "\x1b[4m"
Blink = "\x1b[5m"
Reverse = "\x1b[7m"
Hidden = "\x1b[8m"

FgBlack = "\x1b[30m"
FgRed = "\x1b[31m"
FgGreen = "\x1b[32m"
FgYellow = "\x1b[33m"
FgBlue = "\x1b[34m"
FgMagenta = "\x1b[35m"
FgCyan = "\x1b[36m"
FgWhite = "\x1b[37m"

BgBlack = "\x1b[40m"
BgRed = "\x1b[41m"
BgGreen = "\x1b[42m"
BgYellow = "\x1b[43m"
BgBlue = "\x1b[44m"
BgMagenta = "\x1b[45m"
BgCyan = "\x1b[46m"
BgWhite = "\x1b[47m"

EDIT:

Например, \x1b[31m является escape-последовательностью , которая будет перехвачена вашим терминалом и предложит ей переключиться на красный цвет. Фактически, \x1b - это код для непечатаемого управляющего символа escape. Экранирующие последовательности, относящиеся только к цветам и стилям, также известны как escape-код ANSI и стандартизированы, поэтому они (должны) работать на любой платформе.

472
ответ дан John Culviner 26 August 2018 в 09:33
поделиться

Это список доступных цветов (фон, передний план) в консоли с доступными действиями (сброс, реверс, ...).

const colors = {
 Reset: "\x1b[0m",
 Bright: "\x1b[1m",
 Dim: "\x1b[2m",
 Underscore: "\x1b[4m",
 Blink: "\x1b[5m",
 Reverse: "\x1b[7m",
 Hidden: "\x1b[8m",
 fg: {
  Black: "\x1b[30m",
  Red: "\x1b[31m",
  Green: "\x1b[32m",
  Yellow: "\x1b[33m",
  Blue: "\x1b[34m",
  Magenta: "\x1b[35m",
  Cyan: "\x1b[36m",
  White: "\x1b[37m",
  Crimson: "\x1b[38m" //القرمزي
 },
 bg: {
  Black: "\x1b[40m",
  Red: "\x1b[41m",
  Green: "\x1b[42m",
  Yellow: "\x1b[43m",
  Blue: "\x1b[44m",
  Magenta: "\x1b[45m",
  Cyan: "\x1b[46m",
  White: "\x1b[47m",
  Crimson: "\x1b[48m"
 }
};

Используйте его как показано ниже:

 console.log(colors.bg.Blue, colors.fg.White , "I am white message with blue background", colors.Reset) ; 
 //don't forget "colors.Reset" to stop this color and return back to the default color

Вы также можете установить:

npm install console-info console-warn console-error --save-dev

IT даст вам выход ближе к консоли клиентской стороны:

23
ответ дан Abdennour TOUMI 26 August 2018 в 09:33
поделиться

Я создал свой собственный модуль, StyleMe . Я сделал это, поэтому я могу много сделать с небольшим набором текста. Пример:

var StyleMe = require('styleme');
StyleMe.extend() // extend the string prototype

console.log("gre{Hello} blu{world}!".styleMe()) // Logs hello world! with 'hello' being green, and 'world' being blue with '!' being normal.

Он также может быть вложен:

console.log("This is normal red{this is red blu{this is blue} back to red}".styleMe())

Или, если вы не хотите расширять прототип строки, вы можете использовать только один из трех других вариантов:

console.log(styleme.red("a string"))
console.log("Hello, this is yellow text".yellow().end())
console.log(styleme.style("some text","red,bbl"))
2
ответ дан Andrew 26 August 2018 в 09:33
поделиться

paint-console

Простой цветной журнал. Поддержка проверки объектов и однострочного обновления Этот пакет просто перерисовывает консоль.

install

npm install paint-console

use

require('paint-console');

console.info('console.info();');
console.warn('console.warn();');
console.error('console.error();');
console.log('console.log();');

demo

3
ответ дан borodinmk 26 August 2018 в 09:33
поделиться

Удобный однострочный я написал для скриптов npm, которые не могут иметь зависимости:

const { r, g, b, w, c, m, y, k } = [
  ['r', 1], ['g', 2], ['b', 4], ['w', 7],
  ['c', 6], ['m', 5], ['y', 3], ['k', 0],
].reduce((cols, col) => ({
  ...cols,  [col[0]]: f => `\x1b[3${col[1]}m${f}\x1b[0m`
}), {})

console.log(`${g('I')} love ${r('Italy')}`)

6
ответ дан chriskelly 26 August 2018 в 09:33
поделиться

В этой документации вы можете изменить цвета на основе типа данных вывода:

// you'll need the util module
var util = require('util');

// let's look at the defaults: 
util.inspect.styles

{ special: 'cyan',
  number: 'yellow',
  boolean: 'yellow',
  undefined: 'grey',
  null: 'bold',
  string: 'green',
  date: 'magenta',
  regexp: 'red' }

// what are the predefined colors?
util.inspect.colors

{ bold: [ 1, 22 ],
  italic: [ 3, 23 ],
  underline: [ 4, 24 ],
  inverse: [ 7, 27 ],
  white: [ 37, 39 ],
  grey: [ 90, 39 ],
  black: [ 30, 39 ],
  blue: [ 34, 39 ],
  cyan: [ 36, 39 ],
  green: [ 32, 39 ],
  magenta: [ 35, 39 ],
  red: [ 31, 39 ],
  yellow: [ 33, 39 ] }

Они выглядят как escape-коды ANSI SGR, где первый number - это код для выдачи перед выходом, а второй номер - это код, который следует испускать после. Поэтому, если мы посмотрим на диаграмму кодов ANSI SGR в Википедии , вы увидите, что большинство из них начинаются с номера 30-37 для установки цвета переднего плана и заканчиваются на 39 для возврата к цвет переднего плана по умолчанию.

Так что одна вещь, которая мне не нравится, - это темные некоторые из них. Особенно даты. Попробуйте new Date() в консоли. Темный пурпурный на черном действительно трудно читать. Вместо этого изменим это на светлый пурпурный.

// first define a new color
util.inspect.colors.lightmagenta = [95,39];

// now assign it to the output for date types
util.inspect.styles.date = 'lightmagenta';

Теперь, когда вы пытаетесь new Date(), выход становится более читаемым.

Если вы хотите автоматически установить цвета при запуске узла создайте скрипт, который запускает repl, например:

// set your colors however desired
var util = require('util');
util.inspect.colors.lightmagenta = [95,39];
util.inspect.styles.date = 'lightmagenta';

// start the repl    
require('repl').start({});

Сохраните этот файл (например, init.js), затем запустите node.exe init.js. Он установит цвета и запустит командную строку node.js.

(Благодаря loganfsmyth в этот ответ для идеи repl.)

28
ответ дан Community 26 August 2018 в 09:33
поделиться

logger / index.js

const colors = {
    Reset : "\x1b[0m",
    Bright : "\x1b[1m",
    Dim : "\x1b[2m",
    Underscore : "\x1b[4m",
    Blink : "\x1b[5m",
    Reverse : "\x1b[7m",
    Hidden : "\x1b[8m",

    FgBlack : "\x1b[30m",
    FgRed : "\x1b[31m",
    FgGreen : "\x1b[32m",
    FgYellow : "\x1b[33m",
    FgBlue : "\x1b[34m",
    FgMagenta : "\x1b[35m",
    FgCyan : "\x1b[36m",
    FgWhite : "\x1b[37m",

    BgBlack : "\x1b[40m",
    BgRed : "\x1b[41m",
    BgGreen : "\x1b[42m",
    BgYellow : "\x1b[43m",
    BgBlue : "\x1b[44m",
    BgMagenta : "\x1b[45m",
    BgCyan : "\x1b[46m",
    BgWhite : "\x1b[47m",
};

module.exports = () => {
    Object.keys(colors).forEach(key => {
        console['log' + key] = (strg) => {
            if(typeof strg === 'object') strg = JSON.stringify(strg, null, 4);
            return console.log(colors[key]+strg+'\x1b[0m');
        }
    });
}

в вашем app.js

require('./logger')();

, затем используйте его как:

console.logBgGreen(" grüner Hintergrund ")
0
ответ дан Daniel 26 August 2018 в 09:33
поделиться

Эта библиотека Sindre Sorhus является лучшей на данный момент:

chalk

  • Высокоэффективный
  • Doesn 't extend String.prototype
  • Выразительный API
  • Возможность встраивания стилей
  • Очистить и сфокусировать
  • Автоматическое определение поддержки цвета
  • g7]
  • Активно поддерживается
  • Используется модулями 5500+
18
ответ дан dthree 26 August 2018 в 09:33
поделиться

Есть несколько модулей для изменения цвета шрифта консоли в Node.js, наиболее популярными являются:

  1. Chalk - https://github.com/chalk/chalk
  2. Цвета - https://www.npmjs.org/package/colors
  3. Cli-color - https: // www .npmjs.org / package / cli-color

chalk использование:

npm install chalk

g19]
var chalk = require('chalk');
console.log(chalk.red('Text in red'));

цвета использование:

npm установить цвета

var colors = require('colors/safe'); // does not alter string prototype
console.log(colors.red('This String Will Display RED'));

Там несколько цветов на выбор, а также форматирование текста, например Bold и Italic .

Многие люди отметили свое неодобрение при изменении цвета прототип String, если вы предпочитаете, чтобы ваши прототипы остались одни, вы захотите использовать cli-color или chalk

cli-color :

npm install cli-color

var clc = require('cli-color');
console.log(clc.red('Text in red'));

Оба cli-color и мел требует немного больше ввода b Вы получаете похожие результаты (в цвета) без добавления прототипов String. Оба поддерживают хороший диапазон цветов, форматирование (жирный / курсив и т. Д.) И имеют модульные тесты.

Возьмите выбор.

218
ответ дан Edric 26 August 2018 в 09:33
поделиться

Если вы хотите напрямую изменить цвета непосредственно без модуля, попробуйте

console.log('\x1b[36m', 'sometext' ,'\x1b[0m');

Сначала «\ x1b [36m», чтобы изменить цвета на «36», а затем вернуться к цвету терминала «0», ,

117
ответ дан Henry Tseng 26 August 2018 в 09:33
поделиться

Пошел на этот вопрос и захотел использовать некоторые цвета на stdout без каких-либо зависимостей. Здесь сочетаются некоторые другие замечательные ответы.

Вот что у меня есть. (Требуется узел v4 или больше)

// colors.js
const util = require('util')

function colorize (color, text) {
  const codes = util.inspect.colors[color]
  return `\x1b[${codes[0]}m${text}\x1b[${codes[1]}m`
}

function colors () {
  let returnValue = {}
  Object.keys(util.inspect.colors).forEach((color) => {
    returnValue[color] = (text) => colorize(color, text)
  })
  return returnValue
}

module.exports = colors()

Просто требуется файл, а затем используйте его так:

const colors = require('./colors')
console.log(colors.green("I'm green!"))

Предустановленные цветовые коды доступны здесь

3
ответ дан Joseph Post 26 August 2018 в 09:33
поделиться

В ubuntu вы можете просто использовать цветовые коды:

var sys = require('sys');
process.stdout.write("x1B[31m" + your_message_in_red + "\x1B[0m\r\n");
1
ответ дан Kenjy Minamori 26 August 2018 в 09:33
поделиться

Я не хочу никакой зависимости для этого, и только они работали для меня на OS X. Все остальные примеры из ответов здесь дали мне ошибки Octal literal.

Reset = "\x1b[0m"
Bright = "\x1b[1m"
Dim = "\x1b[2m"
Underscore = "\x1b[4m"
Blink = "\x1b[5m"
Reverse = "\x1b[7m"
Hidden = "\x1b[8m"

FgBlack = "\x1b[30m"
FgRed = "\x1b[31m"
FgGreen = "\x1b[32m"
FgYellow = "\x1b[33m"
FgBlue = "\x1b[34m"
FgMagenta = "\x1b[35m"
FgCyan = "\x1b[36m"
FgWhite = "\x1b[37m"

BgBlack = "\x1b[40m"
BgRed = "\x1b[41m"
BgGreen = "\x1b[42m"
BgYellow = "\x1b[43m"
BgBlue = "\x1b[44m"
BgMagenta = "\x1b[45m"
BgCyan = "\x1b[46m"
BgWhite = "\x1b[47m"

source: https://coderwall.com/p/yphywg/printing-colorful-text-in-terminal-when-run-node-js-script

4
ответ дан Lukas 26 August 2018 в 09:33
поделиться

Если вы используете Windows CMD, перейдите в раздел «Свойства / Цвета» (CMD вверху слева), а затем переопределите значение RGB оскорбительного цвета. В моем случае я считаю, что это пятый цветной квадрат слева, который я изменил на (222,222,222). Не имеет значения, отображает ли выбранный радиокнопка экранный текст или фоновый экран, поскольку вы просто переопределяете этот особый «системный» цвет. После изменения цвета не забудьте выбрать предпочтительный цвет фона или текста, прежде чем нажимать «ОК».

После изменения все эти красноватые сообщения от узла (Ember в моем случае) отчетливо видны.

-1
ответ дан mp31415 26 August 2018 в 09:33
поделиться
var to_rgb = function (_text, _r, _g, _b) {
    return "\x1b[38;2;" + _r + ";" + _g + ";" + _b + "m" + _text + "\x1b[0m";
};

этот код помогает установить цвет переднего плана: \ x1b [38; 2; R; G; Bm

это может не работать где-нибудь

-1
ответ дан PhamCyber 26 August 2018 в 09:33
поделиться

node-colorify

Предоставляет функции для печати текстов в цвете, а также для форматирования текста, например, жирным шрифтом, миганием и т. д.

1
ответ дан raghu 26 August 2018 в 09:33
поделиться

Это подход для Windows 10 (возможно, для 7), и он изменяет цветовую схему (тему) для самого cmd, npm-терминала, а не только для вывода на консоль для конкретного приложения.

Я нашел рабочий плагин Windows - Color Tool , который предположительно разработан под зонтиком Windows. Описание доступно по ссылке .

Я добавил каталог colortool в переменную пути к системной среде, и теперь он доступен, когда я запускаю терминал (командная строка NodeJs, cmd).

0
ответ дан Roman 26 August 2018 в 09:33
поделиться

Я перегрузил консольные методы.

var colors={
Reset: "\x1b[0m",
Red: "\x1b[31m",
Green: "\x1b[32m",
Yellow: "\x1b[33m"
};

var infoLog = console.info;
var logLog = console.log;
var errorLog = console.error;
var warnLog = console.warn;

console.info= function(args)
{
    var copyArgs = Array.prototype.slice.call(arguments);
    copyArgs.unshift(colors.Green);
    copyArgs.push(colors.Reset);
    infoLog.apply(null,copyArgs);
};

console.warn= function(args)
{
    var copyArgs = Array.prototype.slice.call(arguments);
    copyArgs.unshift(colors.Yellow);
    copyArgs.push(colors.Reset);
    warnLog.apply(null,copyArgs);
};
console.error= function(args)
{
    var copyArgs = Array.prototype.slice.call(arguments);
    copyArgs.unshift(colors.Red);
    copyArgs.push(colors.Reset);
    errorLog.apply(null,copyArgs);
};

// examples
console.info("Numeros",1,2,3);
console.warn("pares",2,4,6);
console.error("reiniciandooo");

Выход.

6
ответ дан Ronald 26 August 2018 в 09:33
поделиться

Вы также можете использовать colorworks .

Использование:

var cw = require('colorworks').create();
console.info(cw.compile('[[red|Red message with a [[yellow|yellow]] word.]]'));

Чтобы облегчить жизнь, вы также можете сделать с ней функцию.

function say(msg) {
  console.info(cw.compile(msg));
}

Теперь вы можете сделать как

say(`[[yellow|Time spent: [[green|${time}]]ms.]]`);
2
ответ дан SCLeo 26 August 2018 в 09:33
поделиться

для цветного вывода Вы можете использовать примеры оттуда: https://help.ubuntu.com/community/CustomizingBashPrompt

Также Gist для nodeJs

Например, если вы хотите часть текста красного цвета, просто выполните console.log с помощью:

"\033[31m this will be red \033[91m and this will be normal"

Основываясь на том, что я создал «colog», расширение для Node.js. Вы можете установить его, используя:

npm install colog

Repo и npm: https://github.com/dariuszp/colog

66
ответ дан Shanimal 26 August 2018 в 09:33
поделиться

Reset: "\x1b[0m"
Bright: "\x1b[1m"
Dim: "\x1b[2m"
Underscore: "\x1b[4m"
Blink: "\x1b[5m"
Reverse: "\x1b[7m"
Hidden: "\x1b[8m"

FgBlack: "\x1b[30m"
FgRed: "\x1b[31m"
FgGreen: "\x1b[32m"
FgYellow: "\x1b[33m"
FgBlue: "\x1b[34m"
FgMagenta: "\x1b[35m"
FgCyan: "\x1b[36m"
FgWhite: "\x1b[37m"

BgBlack: "\x1b[40m"
BgRed: "\x1b[41m"
BgGreen: "\x1b[42m"
BgYellow: "\x1b[43m"
BgBlue: "\x1b[44m"
BgMagenta: "\x1b[45m"
BgCyan: "\x1b[46m"
BgWhite: "\x1b[47m"

Например, если вы хотите иметь Dim, Red текст с синим фоном, вы можете сделать это в Javascript следующим образом:

console.log("\x1b[2m", "\x1b[31m", "\x1b[44m", "Sample Text", "\x1b[0m");

Порядок цветов и эффектов кажется не таким важным, но всегда не забудьте сбросить цвета и эффекты в конце.

8
ответ дан Shnd 26 August 2018 в 09:33
поделиться

2017:

простой способ, добавив к сообщению время colord, вам не нужно менять код, используйте keep console.log ('msg') или console.err ('error ')

var clc = require("cli-color");
var mapping = {
  log: clc.blue,
  warn: clc.yellow,
  error: clc.red
};

["log", "warn", "error"].forEach(function(method) {
  var oldMethod = console[method].bind(console);
  console[method] = function() {
    oldMethod.apply(
      console,
      [mapping[method](new Date().toISOString())]
      .concat(arguments)
    );
  };
});

1
ответ дан stackdave 26 August 2018 в 09:33
поделиться

Coolors

Это очень удобно для использования или расширения. Вы можете использовать просто:

var coolors = require('coolors');
console.log(coolors('My cool console log', 'red'));

Или с конфигурацией:

var coolors = require('coolors');
console.log(coolors('My cool console log', {
   text: 'yellow',
   background: 'red',
   bold: true,
   underline: true,
   inverse: true,
   strikethrough: true
}));

И кажется действительно забавным продлить:

var coolors = require('coolors');
function rainbowLog(msg){
    var colorsText = coolors.availableStyles().text;
    var rainbowColors = colorsText.splice(3);
    var lengthRainbowColors = rainbowColors.length;
    var msgInLetters = msg.split('');
    var rainbowEndText = '';
    var i = 0;
    msgInLetters.forEach(function(letter){
        if(letter != ' '){
            if(i === lengthRainbowColors) i = 0;
            rainbowEndText += coolors(letter, rainbowColors[i]);
            i++;
        }else{
            rainbowEndText += ' ';
        }
    });
    return rainbowEndText;
}
coolors.addPlugin('rainbow', rainbowLog);
console.log(coolorsExtended('This its a creative example extending core with a cool rainbown style', 'rainbown'));

Просмотреть модуль Coolors

1
ответ дан user1710825 26 August 2018 в 09:33
поделиться

Для популярной альтернативы цветам , которые не воюют со встроенными методами объекта String, я рекомендую проверить cli-color .

Включает в себя как цвета, так и цепочки, такие как жирный, курсив и подчеркивание.

Для сравнения различных модулей этой категории см. здесь .

10
ответ дан user456584 26 August 2018 в 09:33
поделиться

Есть два способа взглянуть на изменение цветов для консоли Node.js сегодня.

Один из них - это библиотеки общего назначения, которые могут украшать текстовую строку цветовыми тегами, которые затем выводятся через console.log.

Лучшие библиотеки для сегодняшнего дня:

И другим способом - исправление существующих методов консоли. Одна из таких библиотек - manakin позволяет автоматически устанавливать стандартные цвета для всех ваших консольных методов (log, warn, error и info).

Один важный отличие от общих цветных библиотек - он может устанавливать цвета как глобально, так и локально, сохраняя согласованный синтаксис и формат вывода для каждого метода консоли Node.js, который затем используется без указания цветов, поскольку они все установлены автоматически.

Мне пришлось изменить цвет фона консоли на белый из-за проблем с глазами, но шрифт серого цвета и делает сообщения нечитаемыми. Как это изменить?

В частности, для вашей проблемы, вот простейшее решение:

var con = require('manakin').global;
con.log.color = 30; // Use black color for console.log

Он установит черный цвет для каждого звонка console.log в вашем заявление. См. больше цветовых кодов .

Стандартные цвета, используемые manakin :

5
ответ дан vitaly-t 26 August 2018 в 09:33
поделиться

Нет библиотек без осложнений:

console.log(red('Error!'));

function red(s) {
    return '\033[31m' + s;
}
9
ответ дан wayofthefuture 26 August 2018 в 09:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: