簡體   English   中英

加載普通 CSV 文件時出現 pandas read_csv 錯誤

[英]pandas read_csv error when loading a plain CSV file

我在使用 python pandas 時遇到了這個非常奇怪的錯誤:

import pandas as pd

df = pd.read_csv('C:\Temp\test.csv', index_col=None, comment='#', sep=',')

test.csv 是在記事本中創建的一個非常簡單的 CSV 文件:

aaa,bbb,date
hhhhh,wws,20220701

現在我得到錯誤:

  File "C:\test\untitled0.py", line 10, in <module>
    df = pd.read_csv('C:\temp\test.csv', index_col=None, comment='#', sep=',')

  File "C:\...\lib\site-packages\pandas\util\_decorators.py", line 311, in wrapper
    return func(*args, **kwargs)

  File "C:\...\lib\site-packages\pandas\io\parsers\readers.py", line 586, in read_csv
    return _read(filepath_or_buffer, kwds)

  File "C:\...\lib\site-packages\pandas\io\parsers\readers.py", line 482, in _read
    parser = TextFileReader(filepath_or_buffer, **kwds)

  File "C:\...\lib\site-packages\pandas\io\parsers\readers.py", line 811, in __init__
    self._engine = self._make_engine(self.engine)

  File "C:\...\lib\site-packages\pandas\io\parsers\readers.py", line 1040, in _make_engine
    return mapping[engine](self.f, **self.options)  # type: ignore[call-arg]

  File "C:\...\lib\site-packages\pandas\io\parsers\c_parser_wrapper.py", line 51, in __init__
    self._open_handles(src, kwds)

  File "C:\...\lib\site-packages\pandas\io\parsers\base_parser.py", line 229, in _open_handles
    errors=kwds.get("encoding_errors", "strict"),

  File "C:\...\lib\site-packages\pandas\io\common.py", line 707, in get_handle
    newline="",

OSError: [Errno 22] Invalid argument: 'C:\temp\test.csv'

我還嘗試使用 Excel 導出 CSV 文件,並得到相同的錯誤。

有誰知道出了什么問題?

在 python 字符串中, '\t'中的反斜杠是一個轉義字符,它導致這兩個字符( \后跟t )表示tab 您可以使用raw strings來解決這個問題,方法是在開頭的引號前面加上字母 'r':

r'C:\Temp\test.csv'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM