限制参数和错误检查

时间:2016-02-11 17:56:33

标签: python

如何将开始和结束限制为5的倍数?我需要将偏移范围限制为5个字节(5的倍数)。如果偏移范围无效,我想编码退出。

start = args.packet_start
end = args.packet_end

try:
  print("Beginning copying of holter data...")

  # Output the specific holter data
  output_file = open("copied_holter.ecg", 'w')

  # Read part of holter file into memory
  holter = open(args.filename, 'rb')
  holter.seek(start)
  data = holter.read((end+1)-start)
  output_file.write(data)

  # Close the file streams
  holter.close()
  output_file.close()  

 except Exception as e:
   print(e)
   print("Exiting program, due to exception.")
   exit(1)

 print "Finished data copying operations!"

2 个答案:

答案 0 :(得分:0)

if start % 5 != 0:
    exit(0)

你可以做同样的事情。如果start没有均匀地划分5,则它将具有以模5为单位的非零值,因此您的脚本将退出。我使用退出代码零,但您可以选择不同的东西。

答案 1 :(得分:0)

如果我理解你的问题,模运算符%应该可以解决问题。

start = args.packet_start
end = args.packet_end
if not start % 5 or not end % 5:
    raise Exception