Python 3.x 当路径是使用Python3的命令行参数时,无法使用pandas读取csv文件名

Python 3.x 当路径是使用Python3的命令行参数时,无法使用pandas读取csv文件名,python-3.x,pandas,csv,command-line-arguments,Python 3.x,Pandas,Csv,Command Line Arguments,我使用python3(具体来说是python3.6.1)进行编码 args = sys.argv filename = args[1] data = pd.read_csv(filename) 然而,这意味着即使文件存在,它也不存在。我看到文件名被编码为字节字符串,前面有一个b前缀 我还尝试了以下代码 filename = StringIO(filename) data = pd.read_csv(filename) 现在,没有错误。但是,我看到一个空数据框,其中列作为文

我使用python3(具体来说是python3.6.1)进行编码

  args = sys.argv
  filename = args[1]
  data = pd.read_csv(filename)
然而,这意味着即使文件存在,它也不存在。我看到文件名被编码为字节字符串,前面有一个b前缀

我还尝试了以下代码

  filename = StringIO(filename)
  data = pd.read_csv(filename)
现在,没有错误。但是,我看到一个空数据框,其中列作为文件名

我已经用这个命令运行了这个程序

  python id3.py /path/to/filename.csv
有人能帮我吗?或者有人能给我指一下有答案的链接吗

编辑:-路径中存在问题。csv文件的路径有几个空格。因此Ubuntu将其替换为“%20”,我想是因为python将其读取为字节字符串。因此,它无法读取csv文件

当我删除路径中的空格时。python熊猫能够读取csv文件

谢谢

尝试“file/path/with spaces.csv”

因此,在运行脚本时使用引号,例如

python script.py "file/path/with spaces.csv"
尝试“file/path/with spaces.csv”

因此,在运行脚本时使用引号,例如

python script.py "file/path/with spaces.csv"

你能把输入放到问题中吗
打印(文件名)
输出是什么?打印命令给出了/path/to/filename.csv,但是,它显示的错误是FileNotFounderror:b'/path/to/filename.csv'不存在。嘿。。。谁能帮我解决这个问题。。。我还是不明白我为什么会出错!!你能把输入放到问题中吗
打印(文件名)
输出是什么?打印命令给出了/path/to/filename.csv,但是,它显示的错误是FileNotFounderror:b'/path/to/filename.csv'不存在。嘿。。。谁能帮我解决这个问题。。。我还是不明白我为什么会出错!!