# -*- coding: cp936 -*- pre_n = '010010000100001100000000000000000000000001010001001001001010000101' print '编码过程……………………' length = len(pre_n) pre_list = list(pre_n) for ch in range (0,length): pre_list[ch] = int (pre_list[ch]) store_list = pre_list print pre_list ich = -1 ; for ch in range (0,length): if pre_list[ch] == 1 : ich = ich * (-1) pre_list[ch] = pre_list[ch]*ich; print pre_list pre_flag_num = 0; flag_zero = 0; for ch in range (0,length): if pre_list[ch] <> 0 : flag_num = pre_list[ch]; flag_zero = 0; else: flag_zero += 1; if flag_zero == 4 : if flag_num == pre_flag_num : pre_list[ch-3] = flag_num * -1; pre_list[ch] = flag_num * -1; pre_flag_num = flag_num * -1; for ch_temp in range(ch+1,length): pre_list[ch_temp] = pre_list[ch_temp] * -1 else: pre_list[ch] = flag_num ; pre_flag_num = pre_list[ch]; flag_zero = 0; print pre_list,'\n 解码过程………………' flag_zero = 0; for ch in range (0,length): if flag_zero == 2 : if flag_num == pre_list[ch]: flag_zero = 0 for ch_temp in range(ch-3, ch+1): pre_list[ch_temp] = 0; if flag_zero == 3 : if pre_list[ch] <> 0 : flag_zero = 0; for ch_temp in range(ch-3, ch+1): pre_list[ch_temp] = 0; if pre_list[ch] <> 0 : flag_num = pre_list[ch] flag_zero = 0; else: flag_zero += 1; pre_list[ch] = abs(pre_list[ch]) print pre_list if pre_list is store_list: print "Successed ..."
4条回答 默认 最新
- CSDN专家-天际的海浪 2021-05-24 20:14关注
这是python 2.x 版本的代码,如果你系统安装的是python 3.x 版本的话
把
print '编码过程……………………'
改成
print('编码过程……………………')
试试
还有 <> 改成 !=
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 防火墙的混合模式配置
- ¥15 Ubuntu不小心注销了要怎么恢复啊
- ¥15 win10电脑安装完plcsim advanced4.0运行时为什么会提示找不到虚拟网卡
- ¥15 安装powerbuilder10卡在安装程序正在运行这个页面 没有下一步任何指令
- ¥15 关于mpi的问题:请问遇到这种情况需要怎么解决,出现这个问题后电脑不能进行mpi多核运行只能进行单核运行
- ¥50 微信聊天记录备份到电脑提示成功了,但还是没同步到电脑微信
- ¥15 python怎么在已有视频文件后添加新帧
- ¥20 虚幻UE引擎如何让多个同一个蓝图的NPC执行一样的动画,
- ¥15 fluent里模拟降膜反应的UDF编写
- ¥15 MYSQL 多表拼接link