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

不使用replace()实现二进制串0转10、1转01的代码问题排查

问题排查与修复方案

现有代码的核心错误

  • 运算符使用错误:处理'0'的分支中误用了比较运算符==,而非赋值运算符=,该段逻辑只会返回布尔值,不会对临时变量i进行赋值,因此'0'的转换规则完全不生效。
  • 转换规则写反:需求为'0'替换为'10'、'1'替换为'01',现有代码的赋值内容和需求完全相反,'1'对应的赋值内容是'10',不符合要求。
  • 未存储转换结果:遍历字符串得到的i是单个字符的临时副本,仅修改i不会生成完整的转换后字符串,需要额外定义空字符串拼接每次的转换结果。

修正后的实现代码

mystring = '010101'
# 定义空字符串存储转换结果
converted_str = ''
for char in mystring:
    if char == '0':
        converted_str += '10'
    else:
        converted_str += '01'
print(converted_str)

运行验证

输入字符串'010101'的最终输出为100110011001,完全符合替换规则。

内容的提问来源于stack exchange,提问作者Noám Manriquez

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 10:42:02