Advertisement
Guest User

Untitled

a guest
Feb 19th, 2020
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.82 KB | None | 0 0
  1. def load_grid(path):
  2.     with open(path) as f:
  3.         lines = f.readlines()
  4.    
  5.     lines = list(map(str.strip, lines))
  6.     lines = list(filter(None, lines))
  7.    
  8.     starts_with_dashes = [n for n, line in enumerate(lines) if line.startswith('--')]
  9.     last_dash_line = starts_with_dashes[-1]
  10.  
  11.     data_lines = lines[last_dash_line + 1:]
  12.    
  13.     data = []
  14.     for line in data_lines:
  15.         numbers = line.split()
  16.         for number in numbers:
  17.             if number == '/':
  18.                 break
  19.  
  20.             if '*' in number:
  21.                 repeats, value = number.split('*')
  22.                 data.extend([float(value)] * int(repeats))
  23.  
  24.                 continue
  25.  
  26.             data.append(float(number))
  27.  
  28.     side = int(len(data) ** 0.5)
  29.     data = np.array(data).reshape(side, side)
  30.    
  31.     return data
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement