[英]readlines() not working when used on a CSV file
所以有一個“file.csv”,我想使用 Python 從中提取一些數據。
我的問題是這些行的格式不是標准的 csv 格式,而是一行看起來像這樣:
;a_value=value;b_value=value;
所以我的想法是使用.replace()
來編輯一行中的所有內容,以便最終看起來如願:
'a_value':'value', 'b_value':'value'
為了迭代和修改每一行,我遵循了來自Modify csv files? 的這個問題的想法 ?
但我得到:
AttributeError: 'str' object has no attribute 'readline'
我的代碼:
with open(name_file, "r") as csv_file:
data=name_file.readlines()
csv_file=close()
csv_file=open(name_file, "w")
for row in csv_file:
#Replace commands
f.close()
在這種情況下,這很簡單; 當您使用with open
打開文件with open
,您需要對您定義的文件類型變量進行操作,而不是使用文件的路徑。
在這種情況下,您打開文件,然后嘗試讀取基於字符串的文件路徑,而不是file
類型。
所以你需要重寫你的代碼:
with open(name_file, "r") as csv_file:
data=csv_file.readlines()
希望這有幫助!
PS,close方法只有在不使用with
關鍵字時才需要,當退出縮進塊時,文件被關閉。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.