def convertSeq(s, index):
result = [i+1 for i,ch in enumerate(s) if ch=='1']
result = ' '.join([str(index)+':'+str(i) for i in result])
result = str(index)+' '+result
return result
seq1 = "00001000000000000000000010000000000000000000100000000000000000001000000000000000"
a = convertSeq(seq1, 1)
print a
给定的functoin已被创建来转换
"00001000000000000000000010000000000000000000100000000000000000001000000000000000"
如果我使用特定位置的代码,它的工作正常
seq1 = "00001000000000000000000010000000000000000000100000000000000000001000000000000000"
作为我得到的代码的输入,
1 1:5 1:25 1:45 1:65
作为输出(如预期)。但是当我使用包含内容的输入文件时:
00001000000000000000000010000000000000000000100000000000000000001000000000000000
10000000000000000000001000000000000000000010000000000000000000100000000000000000
00100000000000000000001000000000000000000010000000000000000000100000000000000000
输出很奇怪。
在我看来,当我使用
seq1="00001000000000000000000010000000000000000000100000000000000000001000000000000000"
它被认为是一个字符串,因为" "
当我使用输入文件时,它会将其视为0
单个1
字符。
我应该使用什么方法,以便它可以从包含行中二进制代码的文件中获取二进制代码输入,并为每一行生成输出。
样本输入:
00001000000000000000000010000000000000000000100000000000000000001000000000000000
10000000000000000000001000000000000000000010000000000000000000100000000000000000
00100000000000000000001000000000000000000010000000000000000000100000000000000000
00001000000000000000000010000000000000000000100000000000000000001000000000000000
10000000000000000000001000000000000000000010000000000000000000100000000000000000
00100000000000000000001000000000000000000010000000000000000000100000000000000000
样本输出:
1 1:5 1:25 1:45 1:65
2 2:1 2:21 2:44 2:64
and so on...........
由于我是编程新手,我花了 5-6 个小时在上面,但没有成功。请帮忙