当前位置: 首页 > 面试题库 >

python和sys.argv

单于旭东
2023-03-14
问题内容
if len(sys.argv) < 2:
    sys.stderr.write('Usage: sys.argv[0] ')
    sys.exit(1)


if not os.path.exists(sys.argv[1]):
    sys.stderr.write('ERROR: Database sys.argv[1] was not found!')
    sys.exit(1)

这是我正在处理的代码的一部分。我要说的第一部分是,如果用户未键入内容python programname something,它将退出。

第二部分,我试图查看数据库是否存在。在这两个地方,我不确定是否有正确的方法用stderr写出sys.argv。


问题答案:

顺便说一句,您可以将错误消息直接传递到sys.exit:

if len(sys.argv) < 2:
    sys.exit('Usage: %s database-name' % sys.argv[0])

if not os.path.exists(sys.argv[1]):
    sys.exit('ERROR: Database %s was not found!' % sys.argv[1])


 类似资料:
  • 问题内容: 使用某些代码,从命令提示符运行它时出现错误提示… 但我同时导入和。 这是代码的一部分 我缺少基本的东西吗?我不会怀疑。谢谢! 问题答案: 你应该做:

  • 问题内容: 我有为共享内存机器(在C和FORTRAN中)编码OpenMP的经验,可以执行简单的任务,例如矩阵加法,乘法等(仅看它如何与LAPACK竞争)。我知道OpenMP足以执行简单的任务,而无需查看文档。 最近,我转向项目的Python,除了绝对的基础知识之外,我对Python没有任何经验。 我的问题是: 在Python中使用OpenMP的 最简单 方法是什么?最简单的说,我是指在程序员方面花

  • 问题内容: 我最近开始学习Emacs。我完成了本教程,阅读了一些入门文章,到目前为止一切顺利。 现在,我想将其用于Python开发。据我了解,Emacs有两种单独的Python模式:python- mode.el,它是Python项目的一部分;和python.el,这是Emacs 22的一部分。 我阅读了所有可以找到的信息,但是大多数信息似乎已经过时了,我仍然感到困惑。 问题: 他们有什么区别?

  • 问题内容: 是否有可以调用Windows Communication Foundation(WCF)服务的cpython(不是IronPython)客户端的示例代码? 问题答案: WCF需要通过通信协议公开功能。我认为最常用的协议可能是基于HTTP的SOAP。假设这就是您正在使用的内容。 看看在深入Python这一章。它将向您展示如何进行SOAP调用。 我知道,不管通信协议如何,都没有统一的方法来

  • 问题内容: 我正在尝试使用urllib从ftp普查站点下载一个zip文件(“ tl_2008_01001_edges.zip”)。压缩文件以什么格式保存,如何保存? 我对Python还是很陌生,不了解urllib是如何工作的。 这是我的尝试: 如果我知道ftp文件夹列表(在这种情况下为县),是否可以使用glob函数浏览ftp站点列表? 谢谢。 问题答案: 使用的zip文件数据 和 目录列表。 要使

  • 问题内容: Python 3.8.0 最近已发布(在 20191014上 ,可以从[Python]:Python 3.8.0 下载)。 PyWin32 已在[PyPI]:pywin32 225(于 20190915 发行)上 为其构建 。不幸的是,ing后,它不起作用。 样品: other) pages *** bit (AMD64)] on win32 Type “help”, “copyrig