Python 将列表打印为字符串不会';不要打印所有的值

Python 将列表打印为字符串不会';不要打印所有的值,python,Python,我试图在Python中将整数列表打印为字符, 但当我试图打印它时,前几个值丢失了 这就是正在发生的事情 S = [55, 58, 5, 13, 14, 12, 22, 20, 70, 83, 90, 69, 84, 91, 80, 91] # Now create an empty String, D = "" for i in S: D += chr(i) D = ', '.join(map(str, D)) print(D) 最终的输出是 , ♫, ♀, ▬, ¶, F, S,

我试图在Python中将整数列表打印为字符, 但当我试图打印它时,前几个值丢失了

这就是正在发生的事情

S = [55, 58, 5, 13, 14, 12, 22, 20, 70, 83, 90, 69, 84, 91, 80, 91]
# Now create an empty String,
D = ""
for i in S:
    D += chr(i)

D = ', '.join(map(str, D))
print(D)
最终的输出是

, ♫, ♀, ▬, ¶, F, S, Z, E, T, [, P, [
显然,
55、58、5和
13的
chr
值没有打印出来

这是未打印的值

7:♣
13
chr
值可能是空格键或回车键。这只是我的猜测,因为当我打印
chr(13)
时,没有显示任何内容。 但为什么它也要删除前三个值呢

但是,如果我应用这个条件

if i == 13:
    i = i-1
代码会打印所有的值

7, :, ♣, ♀, ♫, ♀, ▬, ¶, F, S, Z, E, T, [, P, [

Ascii 13是回车(
\r
,输入键)。就像在TypeWriter中一样,它将光标返回到行的开头,但不会创建新行(
\n
),因此当您打印某个内容时,它会覆盖该行之前的内容。看看这个:

for i in range(10):
    print("\r%d" % i, end="")
    sleep(1)

额外信息:在基于Unix的系统上,
\n
表示回车和换行,但在Windows系统上,应明确指定换行(
\n
)和回车(
\r
)。这就是为什么在基于Unix的系统上创建的文本文件在Windows上看起来像一条连续的长线。

我应该应用什么条件使其可逆?例如,如果我设置if(i==13):i=12,那么当我应用反向算法并写入时,如果i==12:i=13,那么值为12的其他字符也将变为13。不要尝试打印此行,而是使用repr<代码>打印(repr(“,”).join(map(str,map(chr,S‘‘‘)))
谢谢它的工作原理,但是如何反转它呢?我的意思是如何再次打印它们的等效整数值?请看
ord
函数。下面是ASCII表的一个示例。从这里,您可以看到打印出一些其他字符值时可能会遇到问题。