为啥 chr() 返回一个十六进制值,我怎样才能让它只返回字符 [重复]

Posted

技术标签:

【中文标题】为啥 chr() 返回一个十六进制值,我怎样才能让它只返回字符 [重复]【英文标题】:Why does chr() return a hex value and how can i make it only return characters [duplicate]为什么 chr() 返回一个十六进制值,我怎样才能让它只返回字符 [重复] 【发布时间】:2022-01-22 22:39:20 【问题描述】:

这是我的代码,我正在尝试制作一个简单的加密软件。我想要一些解决方案的想法来删除十六进制值并将它们更改为另一个值,但我希望能够取回这些值。

输入:

a = ['123', '12', '103']
a = [int(i) for i in a]
a = [chr(i) for i in a]
print(a)

输出:

['', '\x0c', 'g']

【问题讨论】:

你想要的不是很清楚,预期的输出是什么? a = [str(i) for i in a] ??? 我建议记录chr的文档 我已经添加了预期的输出。请重新提出问题。 @HarshaBiyani 让我们等待作者提供预期的输出而不是猜测。 【参考方案1】:

你可以试试:

>>> a = ['123', '12', '103']
>>> a = [chr(int(i)) for i in a]
>>> a
['', '\x0c', 'g']
>>> b = [str(ord(i)) for i in a]
>>> b
['123', '12', '103']

【讨论】:

以上是关于为啥 chr() 返回一个十六进制值,我怎样才能让它只返回字符 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

怎么才能把Ajax返回值作为JS的返回值传出去

php chr()函数 语法

Python chr() 函数

为啥这个 pg 查询这么慢?我怎样才能让它更快?

我怎样才能得到一个值的二进制表示[重复]

我怎样才能使它如此这个java程序将读取二进制文件的其余部分,而不是添加额外的空格?