You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何拆分列表中的独立字符,对每个字符ord运算减4后转回chr字符串

错误原因

你使用的split(",")需要字符串存在逗号作为分隔符才能拆分,而你拼接后的字符串没有逗号,同时写法是生成器表达式,不符合拆分单个字符的需求。Python中直接用list(目标字符串)即可将字符串按单个字符拆分为列表。

实现方案

你不需要先拼接字符串再拆分,直接在八进制转字符环节处理效率更高,两种实现方式如下:

方式1:列表推导式实现(代码更简洁)

First = "152 162 152 145 162 167 150 172 153 162 145 170 141 16"
# 拆分八进制字符串为列表
oct_list = First.split()
# 直接转字符后执行ord减4操作
final_str = ''.join([chr(ord(chr(int(i, base=8))) - 4) for i in oct_list])
print(final_str)

方式2:分步实现(更易读,可单独拿到字符列表)

First = "152 162 152 145 162 167 150 172 153 162 145 170 141 16"
oct_list = First.split()
# 存储转码后的单个字符列表
char_list = []
for oct_val in oct_list:
    char_list.append(chr(int(oct_val, base=8)))

# 对每个字符做ord减4处理
final_str = ""
for c in char_list:
    final_str += chr(ord(c) - 4)

print(final_str)

注意事项

你原有代码中初始化solve = " "会在结果开头多一个空格,若不需要额外空格,初始化时应设为空字符串solve = ""。

内容的提问来源于stack exchange,提问作者iis2h

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 07:15:03