当没有第二个参数Python时,向命令行发送消息

时间:2018-03-12 13:28:54

标签: python windows command-line python-3.4

我刚开始尝试在命令行上运行程序

我正在处理一个带有csv文件并将其上传到mysql数据库的脚本,我将csv文件作为参数进行调整Script.py filelocation,运行时效果很好我现在唯一想做的就是有一个我可以调用的函数,如果第二个参数没有被放置,它不会崩溃id就像在命令行中显示消息一样{{ 1}}或类似的东西,而不仅仅是崩溃。

我根本没有在命令行上工作,而且我真的很挣扎

修改

我为之前不包含我的代码而道歉。

something went wrong please try again

它一直假设参数总是大于2,因此输出总是

def param_check():

# Checks the number of parameters.
if len(sys.argv) == 2:
    print("Parameters are correct.")

elif len(sys.argv) < 2:
    print("Parameter missing... Please input CSV file.")
    exit(1)

else:
    print("Too many parameters... Please try again.")
    exit(1)

2 个答案:

答案 0 :(得分:0)

异常处理示例

import sys
try:
  print ('Argument List:', str(sys.argv[1]))
except:
  print('something went wrong please try again')
  sys.exit()

转到以下链接了解更多信息:

  

https://docs.python.org/3/tutorial/errors.html

答案 1 :(得分:0)

import sys
print(len(sys.argv))
print(str(sys.argv))
if ( len(sys.argv)<2 ) :
    print("need argument...")
    sys.exit()
print("parameter :", sys.argv[1])


C:\Users\crazy>python a.py a b c
4
['a.py', 'a', 'b', 'c']
parameter : a

C:\Users\crazy>python a.py a
2
['a.py', 'a']
parameter : a

C:\Users\crazy>python a.py
1
['a.py']
need argument...