私はPython 2.5を使用しており、totalという変数を作成して3つのファイルを追加しようとしています。次に、私は合計を圧縮して16進数に変換し、最大長4096文字の文字列リストに分割します。私は効率的にそれをやった感じPython:1つの変数に3つのテキストファイルを追加してリストに分割する方法
は現在、私は、ファイルのリストを持っていると私はそれがすべてこのように、ここ件まで
filelist = ['debug.log', 'error.log', 'reclog.log'];
total = ''
for files in filelist:
f = open(files, 'r');
total = total + f.read();
f.close();
compressedtotal = zlib.compress(total);
hextotal = compressedtotal.encode('hex');
を合計して連結しています。しかし、その後、私はmsgtlistという文字列のリストにhextotalを分割しようとします。しかし、msglistの各文字列の最大長は、4096文字を超えないようにしてください。
if len(hextotal)%4096 >0 : checker = 1;
else: checker = 0;
nmsgs = int(math.ceil(len(hextotal)/4096));
nn = str(nmsgs);
msglist = [];
for msgs in range(1,nmsgs+1):
if msgs == nmsgs and checker == 1:
msglist.append(hextotal[4096*(msgs-1):]);
else: msglist.append(hextotal[4096*(msgs-1):4096*(msgs)]);
これは "pythonic"ではないし、Pythonにはかなり新しいので、より単純な方法が必要です。 THanks a lot
はどうもありがとうございました:) – kal