假设我的Windows计算机上有Python脚本。它在路径'E:/.../ input'读取文件,并在路径'E:/.../ output'提供输出。是否可以将其上传到github,以便其他人只需使用适当的shell命令,就可以在Linux计算机上运行相同的脚本?
该问题是由
引起的https://github.com/InsightDataScience/prediction-validation
但是我没有Linux机器,可以用来测试我的脚本。因此是一个问题。
答案 0 :(得分:0)
可以。
但是由于文件路径的格式和文件系统的结构是特定于操作系统的,因此您应该修改代码以支持跨平台功能。
您可以选择执行以下一项操作:
1)如果使用相对路径从输入读取或写入到输出,则可以使用os.path.join(“ input”,“ folder”,“ input.txt”)之类的代码来获取输入路径源代码位置的文件。由于os.path.join在不同操作系统中的实现彼此不同。因此,您无需再担心文件路径的不同格式。
2)如果使用绝对路径进行读写,则可以使用程序参数让用户指定输入/输出文件路径的绝对路径。在最简单的情况下
import sys
input = sys.argv[1]
output = sys.argv[2]
print(input, output)
使用以下代码运行代码(如果使用script.py命名):
python3 script.py E:\data\input.txt E:\data\output.txt
然后您将获得输出
E:\data\input.txt E:\data\output.txt
因此,无论用户使用哪种操作系统,都可以让用户自由选择输入和输出路径。