首页 > 解决方案 > 如何在 github 上上传 Python 脚本

问题描述

假设我有一个 Python 脚本在我的 Windows 计算机上运行。它读取路径“E:/.../input”处的文件,并在路径“E:/.../output”处提供输出。是否可以将其上传到 github,这样其他人只需使用适当的 shell 命令在他们的 linux 机器上运行相同的脚本?

这个问题的动机是

https://github.com/InsightDataScience/prediction-validation

但是我没有可以用来测试我的脚本的 Linux 机器。因此问题。

标签: linuxgithub

解决方案


有可能。

但是由于文件路径的格式和文件系统的结构是特定于操作系统的,因此您应该修改代码以支持跨平台功能。

您可以选择执行以下操作之一:

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

因此,通过这种方式,无论用户使用什么操作系统,您都可以自由选择输入和输出路径。


推荐阅读