如何打印 ASCII 艺术字?
How to print ASCII art?
我想在我的终端上使用 python 3 打印一些 ASCII 艺术作品。我试过三重引号,但出现了各种语法错误。你会怎么做?
编辑:
让我们来 very good ASCII ART,我们想在我们的终端上打印它。诱人的示例程序::
print('''\
.$$$$$:$$$:$$$$$$$ _..._ .$$$SSSSSS$$$$$$$$$.
.$$$$$:$$$$:$$$$$$$ ~.sggg. " .~(g )$$$$$$$$$$.
$$$$$:$$$$$:$$$$$$$ .sS$$$$$$$$s. : '"--"' `$$$$$$$$$$.
`$$$:$$$$$$:$$$$$$$.$$" .. g"-. `. `.-.._ `$$$$$$$$$$
$$$:$$$$$$:$$$$$$$`$' ' `._.' : `--- $$$$$$$$$.
$$$:.$$$$$:$$$$$$$ `---' _.' $$$$$$$$$$$.
$$$$$:$$$$:$$$$$$s ----" . $$$$$$$$$$$$.
$$$$$`.$$$:$$$$$$$. `-._ .$$$$$$$$$$$$$$Sss.
$$$$$$`;$$:$$$$$$$$. _.: .' ; $$$$$$$$$$$$$$$$$$$.
.s$$$$$$'$$`.$$$$$$$$. .' `. ' _ .`. $$$$$$$$$$$$$$$$$$$$Ss.
.s$$$$$$$$$$$$:$$$$$$$$$ : _ ~~-...'.'.' : $$$$$$$$$$$$$$$$$$$$$$$
.s$$$$$$$$$$$$$$`.$$$$$$$$s : .~-,-.-.~:'.' : $$$$$$$$$$$$$$$$$$$$$$
.s$$$$$$$$$$$$$$$$$`$$$$$$$$$$. ` ~-.`"""'.' `.$$$$$$$$$$$$$$$$$$$'
''')
抱歉,如果问题不清楚,我是新手。
您发布的示例在 python 2.7 和 python 3 中都可以正常打印。不清楚您的问题出在哪里,因为它工作正常,但对于其他 ASCII 文本,您可能会得到错误。
为了打印包含 ' 或 " 等引号的 ASCII 文本,您需要在打印函数的开头和结尾添加三重引号来解决此问题。
也许您的问题是您不想在 ascii 艺术的顶部和底部添加新行。你需要在末尾有一个 space 来让 python 知道它是字符串的末尾。例如:
print(''''art' ''')
请注意,开头和结尾有 3 个引号,在您要打印的字符串的最后一个引号之间有一个 space。这将从字符串中删除换行符。
这行不通,因为它没有 space:
print(''''art'''')
要去掉顶部的换行符,您基本上需要在作品顶部的第一行按返回space,但保留 space。它不会在代码中排列,但是当它打印时它会正确排列。
这段代码删除了顶部和底部的换行符。也许您忘记在 ascii 艺术中的引号和三重引号之间的末尾添加 space。
mystring = ''' .$$$$$:$$$:$$$$$$$ _..._ .$$$SSSSSS$$$$$$$$$.
.$$$$$:$$$$:$$$$$$$ ~.sggg. " .~(g )$$$$$$$$$$.
$$$$$:$$$$$:$$$$$$$ .sS$$$$$$$$s. : '"--"' `$$$$$$$$$$.
`$$$:$$$$$$:$$$$$$$.$$" .. g"-. `. `.-.._ `$$$$$$$$$$
$$$:$$$$$$:$$$$$$$`$' ' `._.' : `--- $$$$$$$$$.
$$$:.$$$$$:$$$$$$$ `---' _.' $$$$$$$$$$$.
$$$$$:$$$$:$$$$$$s ----" . $$$$$$$$$$$$.
$$$$$`.$$$:$$$$$$$. `-._ .$$$$$$$$$$$$$$Sss.
$$$$$$`;$$:$$$$$$$$. _.: .' ; $$$$$$$$$$$$$$$$$$$.
.s$$$$$$'$$`.$$$$$$$$. .' `. ' _ .`. $$$$$$$$$$$$$$$$$$$$Ss.
.s$$$$$$$$$$$$:$$$$$$$$$ : _ ~~-...'.'.' : $$$$$$$$$$$$$$$$$$$$$$$
.s$$$$$$$$$$$$$$`.$$$$$$$$s : .~-,-.-.~:'.' : $$$$$$$$$$$$$$$$$$$$$$
.s$$$$$$$$$$$$$$$$$`$$$$$$$$$$. ` ~-.`"""'.' `.$$$$$$$$$$$$$$$$$$$' '''
print(mystring)
我想在我的终端上使用 python 3 打印一些 ASCII 艺术作品。我试过三重引号,但出现了各种语法错误。你会怎么做?
编辑:
让我们来 very good ASCII ART,我们想在我们的终端上打印它。诱人的示例程序::
print('''\
.$$$$$:$$$:$$$$$$$ _..._ .$$$SSSSSS$$$$$$$$$.
.$$$$$:$$$$:$$$$$$$ ~.sggg. " .~(g )$$$$$$$$$$.
$$$$$:$$$$$:$$$$$$$ .sS$$$$$$$$s. : '"--"' `$$$$$$$$$$.
`$$$:$$$$$$:$$$$$$$.$$" .. g"-. `. `.-.._ `$$$$$$$$$$
$$$:$$$$$$:$$$$$$$`$' ' `._.' : `--- $$$$$$$$$.
$$$:.$$$$$:$$$$$$$ `---' _.' $$$$$$$$$$$.
$$$$$:$$$$:$$$$$$s ----" . $$$$$$$$$$$$.
$$$$$`.$$$:$$$$$$$. `-._ .$$$$$$$$$$$$$$Sss.
$$$$$$`;$$:$$$$$$$$. _.: .' ; $$$$$$$$$$$$$$$$$$$.
.s$$$$$$'$$`.$$$$$$$$. .' `. ' _ .`. $$$$$$$$$$$$$$$$$$$$Ss.
.s$$$$$$$$$$$$:$$$$$$$$$ : _ ~~-...'.'.' : $$$$$$$$$$$$$$$$$$$$$$$
.s$$$$$$$$$$$$$$`.$$$$$$$$s : .~-,-.-.~:'.' : $$$$$$$$$$$$$$$$$$$$$$
.s$$$$$$$$$$$$$$$$$`$$$$$$$$$$. ` ~-.`"""'.' `.$$$$$$$$$$$$$$$$$$$'
''')
抱歉,如果问题不清楚,我是新手。
您发布的示例在 python 2.7 和 python 3 中都可以正常打印。不清楚您的问题出在哪里,因为它工作正常,但对于其他 ASCII 文本,您可能会得到错误。
为了打印包含 ' 或 " 等引号的 ASCII 文本,您需要在打印函数的开头和结尾添加三重引号来解决此问题。
也许您的问题是您不想在 ascii 艺术的顶部和底部添加新行。你需要在末尾有一个 space 来让 python 知道它是字符串的末尾。例如:
print(''''art' ''')
请注意,开头和结尾有 3 个引号,在您要打印的字符串的最后一个引号之间有一个 space。这将从字符串中删除换行符。
这行不通,因为它没有 space:
print(''''art'''')
要去掉顶部的换行符,您基本上需要在作品顶部的第一行按返回space,但保留 space。它不会在代码中排列,但是当它打印时它会正确排列。
这段代码删除了顶部和底部的换行符。也许您忘记在 ascii 艺术中的引号和三重引号之间的末尾添加 space。
mystring = ''' .$$$$$:$$$:$$$$$$$ _..._ .$$$SSSSSS$$$$$$$$$.
.$$$$$:$$$$:$$$$$$$ ~.sggg. " .~(g )$$$$$$$$$$.
$$$$$:$$$$$:$$$$$$$ .sS$$$$$$$$s. : '"--"' `$$$$$$$$$$.
`$$$:$$$$$$:$$$$$$$.$$" .. g"-. `. `.-.._ `$$$$$$$$$$
$$$:$$$$$$:$$$$$$$`$' ' `._.' : `--- $$$$$$$$$.
$$$:.$$$$$:$$$$$$$ `---' _.' $$$$$$$$$$$.
$$$$$:$$$$:$$$$$$s ----" . $$$$$$$$$$$$.
$$$$$`.$$$:$$$$$$$. `-._ .$$$$$$$$$$$$$$Sss.
$$$$$$`;$$:$$$$$$$$. _.: .' ; $$$$$$$$$$$$$$$$$$$.
.s$$$$$$'$$`.$$$$$$$$. .' `. ' _ .`. $$$$$$$$$$$$$$$$$$$$Ss.
.s$$$$$$$$$$$$:$$$$$$$$$ : _ ~~-...'.'.' : $$$$$$$$$$$$$$$$$$$$$$$
.s$$$$$$$$$$$$$$`.$$$$$$$$s : .~-,-.-.~:'.' : $$$$$$$$$$$$$$$$$$$$$$
.s$$$$$$$$$$$$$$$$$`$$$$$$$$$$. ` ~-.`"""'.' `.$$$$$$$$$$$$$$$$$$$' '''
print(mystring)