рисунок поля в Python

Вы можете использовать window.open для создания нового окна - эта функция возвращает ссылку на появившееся окно. Затем вы можете отправить сообщение, используя postmessage.

https://developer.mozilla.org/en-US/docs/Web/API/Window/postMessage

var w = window.open('https://google.com')
w.postMessage('hello', "*"); // can use target domain instead of *

7
задан Community 23 May 2017 в 10:27
поделиться

4 ответа

Ваша проблема не находится в Python, а в cmd.exe. Это должно быть установлено поддерживать UTF-8. К сожалению, не очень легко переключить консоль окон (cmd.exe) на "совместимый с Python" путь UTF-8.

Можно использовать команду (в cmd.exe) для переключения на UTF8:

chcp 65001

но Python (2.5) не распознает то кодирование. Так или иначе необходимо установить правильный шрифт та поддержка unicode!

Для рисунка поля я рекомендую использовать старую кодовую страницу 437 DOS, таким образом, необходимо настроить его прежде, чем запустить скрипт Python:

chcp 437

Затем можно распечатать закодированные символы cp437 непосредственно к stdout или декодировать символы к unicode и печатать unicode, пробовать этот сценарий:

# -*- coding: utf-8 -*- 
for i in range(0xB3, 0xDA):
    print chr(i).decode('cp437'),

# without decoding (see comment by J.F.Sebastian)
print ''.join(map(chr, range(0xb3, 0xda)))

Однако можно использовать символы рисования поля, но Вы не можете использовать другие символы, в которых Вы, возможно, нуждаетесь из-за ограничения cp437.

6
ответ дан 7 December 2019 в 03:21
поделиться

Это варьируется значительно на основе того, что поддерживает Ваш терминал. Если это использует UTF-8, и если Python может обнаружить его, то это работает просто великолепно.

>>> print u'\u2500'
─
>>> print u'\u2501'
━
>>> print u'\u2502'
│
>>> print u'\u2503'
┃
>>> print u'\u2504'
┄
2
ответ дан 7 December 2019 в 03:21
поделиться

Печать их распечатает в кодировке символов по умолчанию, которая, возможно, не является правильным кодированием для Вашего терминала.

Вы попытались транскодировать их к utf-8 сначала?

print u'\u2500'.encode('utf-8')
print u'\u2501'.encode('utf-8')
print u'\u2502'.encode('utf-8')
print u'\u2503'.encode('utf-8')
print u'\u2504'.encode('utf-8')

Это работает на меня на Linux в терминале, который поддерживает закодированные данные utf-8.

1
ответ дан 7 December 2019 в 03:21
поделиться

Python поддерживает Unicode. Возможно распечатать эти символы.

Например, см. мой ответ на "Кодировку по умолчанию для Python для stderr?" где я имею, показал, как распечатать Unicode к sys.stderr (замените его sys.stdout для пустого print операторы).

0
ответ дан 7 December 2019 в 03:21
поделиться
Другие вопросы по тегам:

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