Skip to content

006

原始文件为 Python 代码,本文是转换后的 Markdown 文件。

from pwn import *

N = 1000
C = 10

# 4. Python 二维列表初始化
send_data = [[] for j in range(C)]
list_count = [0 for j in range(C)]

for i in range(N):
    for j in range(C):
        if (i & (1 << j)):
            send_data[j].append(i)
            list_count[j] += 1

# 1. Python 列表转字符串 (使用 join)
# 2. Python 二维列表转字符串 (本题外层'-',内层' ')
# 3. Python join 遇到 int (第20行的 join 方法里面重新改变列表)
poc = ''
for innerlist in send_data:
    poc += ' '.join( [str(x) for x in innerlist] )
    poc += '-'
poc = poc[:-1]

# 5. Python 遍历多个列表: 使用 zip / zip_longest
list( zip(range(3), 'ABC') )
# output: [(0, 'A'), (1, 'B'), (2, 'C')]
list( zip(range(3), 'ABC', [0.0, 1.1, 2.2, 3.3]) )
# output: [(0, 'A', 0.0), (1, 'B', 1.1), (2, 'C', 2.2)]
from itertools import zip_longest
list( zip_longest(range(3), 'ABC', [0.0, 1.1, 2.2, 3.3], fillvalue=-1) )
# output: [(0, 'A', 0.0), (1, 'B', 1.1), (2, 'C', 2.2), (-1, -1, 3.3)]