Python 打印时不可见的字符

Python 打印时不可见的字符,python,ascii,file-writing,non-printable,Python,Ascii,File Writing,Non Printable,前几天我在使用一个ascii代码表,发现有一些“无法打印”的字符。这些字符包括“Null”、“头的开始”和其他类似字符。 我自己测试了这些字符,尝试将“Null”打印到控制台,如下所示: print ("Hello" + chr(0)) 输出了Hello这个词以及一个带有字母“NUL”的白色小框。我原以为空字符不会有任何输出——我以为输出只是“Hello” 这个输出是Python独有的吗?如果输出写入文件,是否未写入字符?另外,如果“Hello+chr(0)”被写入某个地方,然后被另一个程序读

前几天我在使用一个ascii代码表,发现有一些“无法打印”的字符。这些字符包括“Null”、“头的开始”和其他类似字符。 我自己测试了这些字符,尝试将“Null”打印到控制台,如下所示:

print ("Hello" + chr(0))
输出了Hello这个词以及一个带有字母“NUL”的白色小框。我原以为空字符不会有任何输出——我以为输出只是“Hello”

这个输出是Python独有的吗?如果输出写入文件,是否未写入字符?另外,如果
“Hello+chr(0)”
被写入某个地方,然后被另一个程序读入,该程序会识别“Null”还是会像不存在一样读取?基本上,有什么东西是隐藏的,有什么东西消失了,还有什么是可见的


谢谢大家!

这是控制台显示设置的功能。Python只是将给定的ASCII代码发送到您的控制台,它将控制台视为另一个输出设备,与写入文件几乎相同。如何显示每个字符取决于控制台的输入管理器。例如,请注意一些应用程序如何将:-)转换为单个字符的笑脸图标?这是在另一端的显示应用程序中完成的

您可以通过用另一种语言编写等效的输出程序来演示这一点——看看它是如何以同样的方式处理NUL字符的


我个人最喜欢的是ASCII 007字符的定时字符串。这会响起终端铃声(这些天通常会发出一声“嘟嘟”声)。

您也在哪里打印?安慰石斑鱼类?终端?控制台。抱歉,我将编辑并指定。我无法重新创建您的问题。您能提供更多信息吗?在Windows的命令提示符、Python的默认Shell、Linux的终端上进行测试。
print(“hello\x00”)
print(“hello”+chr(0))
相同。。仅供参考,这不是一个真正的问题。我对无法打印的字符更感兴趣。我只是想弄清楚当你在不同的平台上打印一个不可打印的字符时会发生什么,无论是视觉上还是代码上。我假设如果一个字符串包含空字符,那么它在打印时就不会显示该字符。例如,该打印(“hello”+chr(0))将在视觉上输出为“hello”,但存储为“hello\x00”(或任何哈哈)。但是,当我在python控制台中测试它时,情况并非如此。这就是我的问题的来源:太棒了,谢谢你的回答!那很有趣,不客气。当我主修计算机科学时,我们中的许多人都必须实现一两个简单的终端驱动程序。现在的世界要美好得多。