1

次のコードを実行すると:

file1 = open("sources.conf", "r");
datalist = list(file1.readlines());
datalist[3][32]= "11";

次のエラーが表示されます: 'str' object does not support item assignment。少し読んだ後、Pythonで文字列を変更できないことがわかりました。これに対する他の回避策はありますか?

4

3 に答える 3

0

行ごとに読み取り、必要に応じて文字列を変更することをお勧めしますreadlines()(ファイル全体をメモリに読み込むため、それが最善の解決策かどうかはわかりません)

with open("sources.conf", "r") as file1
    datalist = []
    for i, line in  enumerate(file1):
        if i == 3:
            datalist[i] = line[:32] + "11" + line[33:]
        else:
            datalist[i] = line

またはjoinメソッドを使用する

datalist[i] = ''.join([line[:32], "11", line[33:]])
于 2013-07-03T17:01:02.567 に答える