[解決済み] "IOError "です。[Errno 0] Error" Pythonのエラー
2022-02-09 04:36:45
質問
ファイルに何かを追加するスクリプトがあるのですが、理解できないエラーが発生し、どのようにトリガーされているのかがわかりません。
以下はそのコードです。
import re
num_words = "four kiddiewinks|four children|four kids"
words_list = num_words.split('|')
def append_2synonym(words_list, num_words):
with open('test2 words.txt', 'a+') as f:
read_f = f.read()
patt = r'^' + words_list[0] + '\|'
result = re.search(patt, read_f, re.MULTILINE)
if result == None:
f.write("\n" + num_words)
else:
print "\nNo match found in '2 words.txt' file"
append_2synonym(words_list, num_words)
以下は、「test2 words.txt」ファイルの内容です。
five kiddiewinks|five kids|five children
mobile phone|cell phone|cellular phone
stinky cheese|smelly cheese
以下は、私が得ているエラーの全容です。
Traceback (most recent call last):
File "D:\Magic Briefcase\My Python Scripts\Spin Scripts\synonyms\testing2.py", line 16, in <module>
append_2synonym(words_list, num_words)
File "D:\Magic Briefcase\My Python Scripts\Spin Scripts\synonyms\testing2.py", line 12, in append_2synonym
f.write("\n" + num_words)
IOError: [Errno 0] Error
[Finished in 0.1s with exit code 1]
解決方法は?
回答引用元 Pythonのファイル操作 Windowsで読み込みと書き込みを切り替える場合、fflush、fsetpos、fseek、またはrewind操作が介在する必要があります。
以下は、考えられる修正方法です。
import re
num_words = "four kiddiewinks|four children|four kids"
words_list = num_words.split('|')
def append_2synonym(words_list, num_words):
with open('test2 words.txt', 'a+') as f:
read_f = f.read()
patt = r'^' + words_list[0] + '\|'
result = re.search(patt, read_f, re.MULTILINE)
if result == None:
f.seek(0,2) # change is here !!
f.write("\n" + num_words)
else:
print "\nNo match found in '2 words.txt' file"
append_2synonym(words_list, num_words)
で
f.seek(0,2)
,
2
は
from_what
の引数を指定します。A
from_what
の値です。
0
は、ファイルの先頭から計測します。
1
は現在のファイル位置を使用し
2
はファイルの終端を基準点としています。
from_what
は省略可能で、デフォルトは
0
ファイルの先頭を参照点として使用します。
関連
-
[解決済み] 'int'オブジェクトに'__getitem__'属性がない。
-
[解決済み】Flaskのテンプレートが見つからない【重複あり
-
[解決済み] Pythonには文字列の'contains'サブストリングメソッドがありますか?
-
[解決済み] Pythonで現在時刻を取得する方法
-
[解決済み] Pythonで2つのリストを連結する方法は?
-
[解決済み] ファイルのコピー方法について教えてください。
-
[解決済み] Pythonでファイルやフォルダを削除する方法は?
-
[解決済み] Pythonで例外を手動で発生(スロー)させる
-
[解決済み】ネストされたディレクトリを安全に作成するには?
-
[解決済み】Pythonに三項条件演算子はありますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
opencvとpillowを用いた顔認証システム(デモあり)
-
Python 人工知能 人間学習 描画 機械学習モデル作成
-
Pythonによるjieba分割ライブラリ
-
風力制御におけるKS原理を深く理解するためのpythonアルゴリズム
-
Pythonの@decoratorsについてまとめてみました。
-
[解決済み】socket.error: [Errno 48] アドレスはすでに使用中です。
-
[解決済み】TypeError: re.findall()でバイトのようなオブジェクトに文字列パターンを使用することはできません。)
-
[解決済み】終了コード -1073741515 (0xC0000135)でプロセス終了)
-
[解決済み】Pythonでgoogle APIのJSONコードを読み込むとエラーになる件
-
[解決済み】ImportError: bs4という名前のモジュールがない(BeautifulSoup)