[英]python Pyinstaller IOError: [Errno 13] Permission denied
[英]Python IOError: [Errno 13] Permission denied in linux?
我想將字符串字符寫入文件,但出現這樣的錯誤IOError: [Errno 13] Permission denied: '/python/add.txt'
。 如何解決這個問題?
這是我的代碼
q = open('/python/add.txt','r')
a = ['123', '234', '456']
lst = []
for line in q:
for word in a:
if word in line:
line = line.replace(word + "\n",'')
lst.append(line)
q.close()
z = open(r'/python/add.txt','w+')
for line in lst:
z.write(line)
z.close()
您正在嘗試在文件系統的根級別寫入一個名為“python”的文件夾。 這可能是不允許的。
我猜你不小心在文件路徑的開頭放了一個/
(使其成為絕對路徑),當你打算寫"python/add.txt"
時,這是一個相對文件路徑。
您還應該在打開文件時使用with
構造,以確保它們在之后關閉。
with
語法和更好的變量名的更干凈的版本:
add_file_path = 'python/add.txt'
words_to_replace = ['123', '234', '456']
replaced_lines = []
with open(add_file_path, 'r') as f:
for line in f:
for word in words_to_replace:
if word in line:
line = line.replace(word + "\n",'')
lst.append(line)
with open(add_file_path, 'w+') as f:
for line in replaced_lines:
f.write(line)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.