前提・実現したいこと
pythonで実行した結果を逐一テキストファイルに保存していきたいです。
しかし、実行結果のタイプがNoneTypeとなりwriteで保存することができません。
このような場合どう対処すればよいでしょうか。
発生している問題・エラーメッセージ
Label: 1, F,M(1) --------------------------------------------------------------------------- TypeError Traceback (most recent call last) <ipython-input-39-e32c3f1d686c> in <module> 27 i=str(i) 28 i=print("Label: {}, {},{}({})".format(cols[0],cols[3],cols[4],cols[5])) ---> 29 f.write(i+'\n') 30 31 f.close() TypeError: unsupported operand type(s) for +: 'NoneType' and 'str'
該当のソースコード
jupyternotebook
1# ラベルデータの読み込み 2 3flower_dics={} 4i=1 5 6 7label_dataf=open('fiw/fiwlist/label_new.txt','r') 8 9f=open('fiw/fiwlist/label_hozon.txt','w') #ラベルデータ読み込みを保存しようとしてみた 10 11 12for line in label_dataf: 13 line=line.rstrip() 14 cols=line.split() 15 16 assert len(cols) == 6 17 18 19 labelno = cols[0] 20 start = int(cols[1]) 21 end = int(cols[2]) 22 gender_1 = cols[3] 23 gender_2 = cols[4] 24 kinship = cols[5] 25 flower_dics[labelno] = (start, end) 26 27 i=str(i) 28 i=print("Label: {}, {},{}({})".format(cols[0],cols[3],cols[4],cols[5])) 29 f.write(i+'\n') 30 31f.close()
補足情報(FW/ツールのバージョンなど)
Label: 1, F,M(1) Label: 2, M,F(4) Label: 3, F,M(5) Label: 4, M,F(5) Label: 5, F,M(1) Label: 6, M,F(4) Label: 7, M,M(4) Label: 8, M,M(1) Label: 9, M,M(2) Label: 10, M,M(2) Label: 11, M,M(1) Label: 12, M,M(4) Label: 13, F,F(1) Label: 14, F,F(4) Label: 15, F,M(5) Label: 16, M,F(5) Label: 17, F,M(4) Label: 18, M,F(1) Label: 19, F,F(5) Label: 20, F,F(5) Label: 21, F,F(1) Label: 22, F,F(4) Label: 23, F,F(1) Label: 24, F,F(4) Label: 25, F,F(1) Label: 26, F,F(4) Label: 27, F,F(1) Label: 28, F,F(4) Label: 29, F,F(2) Label: 30, F,F(2) Label: 31, M,F(4) Label: 32, F,M(1) Label: 33, M,M(4) Label: 34, M,M(1) Label: 35, M,F(0) Label: 36, F,M(0) Label: 37, M,M(0) Label: 38, M,M(0) Label: 39, M,F(2) Label: 40, F,M(2) Label: 41, M,F(2) Label: 42, F,M(2) Label: 43, F,M(5) Label: 44, M,F(5) Label: 45, F,F(0) Label: 46, F,F(0) Label: 47, F,M(0) Label: 48, M,F(0) Label: 49, F,F(1) Label: 50, F,F(4) Label: 51, F,F(1) Label: 52, F,F(4) Label: 53, M,F(5) Label: 54, F,M(5) #。。。。。続く
プログラムの実行結果はこのようなものです。
このままテキストファイルに保存したいと考えています。
ご指摘よろしくお願いいたします。

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/10/26 07:49