OS 模块,尝试识别文件的路径



我构建了一个名为Assembler.py的小程序:

 def main(argv):
     temp = os.path.realpath(argv[1])
     if temp.endswith(".asm"):
         print(temp)
     else:
         print("submit a valid file")
 if __name__ == "__main__":
     main(sys.argv)

正在使用我构建的一些脚本运行它:

python Assembler.py $1

运行示例:

Assembler pong.asm

我不知道为什么if错了。为什么我的地址不以.asm结尾?

你的所有代码都是这样的:

#coding=utf-8
import os
import sys
def main(argv):
     temp = os.path.realpath(argv[1])
     if temp.endswith(".asm"):
         print(temp)
     else:
         print("submit a valid file")
if __name__ == "__main__":
     main(sys.argv)

然后,您应该直接使用python Assembler pong.asm。例:

C:UsersouDesktoptest>python test.py xyz.asm
C:UsersouDesktoptestxyz.asm
if没有

错。问题出在 shell 脚本以及您尝试运行它的方式上。

如果你想直接运行你的python代码,你应该运行

python Assembler.py pong.asm

.py扩展很重要!

如果你想写一个简单的 shell 脚本来包装它。您可以创建名为 Assembler 的文件,其中包含以下内容:

python Assembler.py $1

要运行这个简单的 shell 脚本,您应该运行:

./Assembler pong.asm

sh Assembler pong.asm

需要./sh的地方。

最新更新