问题就是如何实现官方文档原文: 如果没有脚本名被传递给 Python 解释器, argv[0] 为空字符串。
官方文档描述原文
sys.argv
一个列表,其中包含了被传递给 Python 脚本的命令行参数。 argv[0] 为脚本的名称(是否是完整的路径名取决于操作系统)。如果是通过 Python 解释器的命令行参数 -c 来执行的, argv[0] 会被设置成字符串 '-c' 。如果没有脚本名被传递给 Python 解释器, argv[0] 为空字符串。
为了遍历标准输入,或者通过命令行传递的文件列表,参照 fileinput 模块
注解 在 Unix 上,系统传递的命令行参数是字节类型的。Python 使用文件系统编码和 "surrogateescape" 错误处理方案对它们进行解码。当需要原始字节时,可以通过 [os.fsencode(arg) for arg in sys.argv] 来获取。
sys --- 系统相关的参数和函数 — Python 3.9.7 文档 https://docs.python.org/zh-cn/3.9/library/sys.html#sys.argv