Files
discrete-optimization-coursera/vrp/solver.py
T
2025-08-03 20:24:38 -07:00

43 lines
1.0 KiB
Python

#!/usr/bin/python
# -*- coding: utf-8 -*-
import os
from subprocess import Popen, PIPE
def solveIt(inputData):
# Writes the inputData to a temporay file
tmpFileName = 'tmp.data'
tmpFile = open(tmpFileName, 'w')
tmpFile.write(inputData)
tmpFile.close()
# Runs the command: java Solver -file=tmp.data
process = Popen(['vrp.exe', tmpFileName],
stdout=PIPE)
(stdout, stderr) = process.communicate()
# removes the temporay file
#os.remove(tmpFileName)
return stdout.strip() #.splitlines(True)[-2:]
import sys
if __name__ == '__main__':
if len(sys.argv) > 1:
fileLocation = sys.argv[1].strip()
inputDataFile = open(fileLocation, 'r')
inputData = ''.join(inputDataFile.readlines())
inputDataFile.close()
print 'Solving:', fileLocation
print solveIt(inputData)
else:
print 'This test requires an input file. Please select one from the data directory. (i.e. python solver.py ./data/vrp_5_4_1)'