在 Linux 的 python 脚本中打开并显示文件
Open and display a file within a python script in Linux
我想要 open/display 一个 excel 文件,我将其作为 python 处理的一部分保存在 python 脚本中。
代码的保存部分工作正常(即保存成功,我打开并从 Nautilus 查看 window),但无论我如何尝试以编程方式打开都会抛出错误.
我一直在使用 subprocess 包中的 Popen
方法:
from subprocess import Popen
Popen('./temp/testtest.xlsx')
给出:
PermissionError: [Errno 13] Permission denied: './temp/testtest.xlsx'
我随后尝试更改文件权限:
import os
from subprocess import Popen
os.chmod('./temp/testtest.xlsx',0o777)
Popen('./temp/testtest.xlsx')
给出了:
Out[127]: <subprocess.Popen at 0x7faeb22a4b00>invalid file (bad magic number): Exec format error
并根据更好的判断尝试 运行 作为 shell:
from subprocess import Popen
Popen('./temp/testtest.xlsx', shell=True)
给出了:
invalid file (bad magic number): Exec format error
Out[129]: <subprocess.Popen at 0x7faeb22a46a0>
我也尝试过将文件保存在不同的目录中,但出现类似的错误。如果重要的话,我正在使用 openpyxl
模块来创建和保存 excel 文件,但即使它是我手动创建的 excel 文件,我也会遇到同样的问题。
Popen()
的参数必须是 shell 命令才能打开文件。如果您使用的是 LibreOffice,则该程序是 localc
;如果您使用的是 OpenOffice,则为 oocalc
.
from subprocess import Popen
import os
f = os.path.join('temp', filename)
Popen(['localc', f])
这里有很多选择。您可以安装 libreoffice,这是一个开源办公套件,相当不错,您应该可以直接使用 ooffice —-calc “filename”
打开该文件。如果你真的想留在 python 你可以将数据保存到一个 .csv 文件,并且 pythons anaconda 发行版有 pandas 库,你可以将 .csv 读入数据框相当容易。 import pandas as pd
然后
pd.read_csv(“File_name.csv”)
returns给你一个dataframe,但是记得要import os
和os.chdir(r“/path/to/data”)
。
从那时起 pandas 让您可以轻松访问数据以进行绘图或操作。
数据框的所有功能都在这里,看看合不合你的胃口。
我想要 open/display 一个 excel 文件,我将其作为 python 处理的一部分保存在 python 脚本中。
代码的保存部分工作正常(即保存成功,我打开并从 Nautilus 查看 window),但无论我如何尝试以编程方式打开都会抛出错误.
我一直在使用 subprocess 包中的 Popen
方法:
from subprocess import Popen
Popen('./temp/testtest.xlsx')
给出:
PermissionError: [Errno 13] Permission denied: './temp/testtest.xlsx'
我随后尝试更改文件权限:
import os
from subprocess import Popen
os.chmod('./temp/testtest.xlsx',0o777)
Popen('./temp/testtest.xlsx')
给出了:
Out[127]: <subprocess.Popen at 0x7faeb22a4b00>invalid file (bad magic number): Exec format error
并根据更好的判断尝试 运行 作为 shell:
from subprocess import Popen
Popen('./temp/testtest.xlsx', shell=True)
给出了:
invalid file (bad magic number): Exec format error
Out[129]: <subprocess.Popen at 0x7faeb22a46a0>
我也尝试过将文件保存在不同的目录中,但出现类似的错误。如果重要的话,我正在使用 openpyxl
模块来创建和保存 excel 文件,但即使它是我手动创建的 excel 文件,我也会遇到同样的问题。
Popen()
的参数必须是 shell 命令才能打开文件。如果您使用的是 LibreOffice,则该程序是 localc
;如果您使用的是 OpenOffice,则为 oocalc
.
from subprocess import Popen
import os
f = os.path.join('temp', filename)
Popen(['localc', f])
这里有很多选择。您可以安装 libreoffice,这是一个开源办公套件,相当不错,您应该可以直接使用 ooffice —-calc “filename”
打开该文件。如果你真的想留在 python 你可以将数据保存到一个 .csv 文件,并且 pythons anaconda 发行版有 pandas 库,你可以将 .csv 读入数据框相当容易。 import pandas as pd
然后
pd.read_csv(“File_name.csv”)
returns给你一个dataframe,但是记得要import os
和os.chdir(r“/path/to/data”)
。
从那时起 pandas 让您可以轻松访问数据以进行绘图或操作。
数据框的所有功能都在这里,看看合不合你的胃口。