从文件[Python]每隔Nth(第8个字符)打印

lea*_*erX 0 python file-io loops function

我有一个很长的比特序列,我从文件中转储.现在,我想采用这个位序列,并能够从中提取每个第8位.例如:

100010010101000001001110010001110000110100001010
000110100000101000000000000000000000000000001101
010010010100100001000100010100100000000000000000
etc
Run Code Online (Sandbox Code Playgroud)

会给:

100110
(extraction from second line)
(extraction from third line)
etc
Run Code Online (Sandbox Code Playgroud)

到目前为止,我有以下代码:

 #/usr/bin/python

 with open("thebits.txt", 'r') as f:
        content = [x.strip('\n') for x in f.readlines()]
        {//logic to extract every 8th bit from each line and print it}
Run Code Online (Sandbox Code Playgroud)

如何从每一行中提取每个第8位?.

Ben*_*Ben 5

您可以使用简单的切片:

with open('thebits.txt', 'r') as f:
    for line in f:
        print line.strip()[7::8]
Run Code Online (Sandbox Code Playgroud)

您的示例文件给出:

100110
000001
100000
Run Code Online (Sandbox Code Playgroud)

切片[7::8]为您提供从第8个开始的每个第8个字符(7个从0开始索引).