You can use regex:
import re
s = '144.963286 -37.814212 144.964498 -37.813854 144.964962 -37.814806 144.963711, -37.815168'
pattern = r'([\d\.-]+?\d+\.\d+)[^\d\.-]++?([\d\.-]+?\d+\.\d+)'
new_s = [(float(i.group(1)), float(i.group(2))) for i in re.finditer(pattern, s)]
# [(144.963286, -37.814212), (144.964498, -37.813854), (144.964962, -37.814806), (144.963711, -37.815168)]
import re
s = '144.963286 -37.814212 144.964498 -37.813854 144.964962 -37.814806 144.963711, -37.815168'
pattern = r'([\d\.-]+)[^\d\.-]+([\d\.-]+)'
new_s = [(float(i.group(1)), float(i.group(2))) for i in re.finditer(pattern, s)]
# [(144.963286, -37.814212), (144.964498, -37.813854), (144.964962, -37.814806), (144.963711, -37.815168)]
You can use regex:
import re
s = '144.963286 -37.814212 144.964498 -37.813854 144.964962 -37.814806 144.963711, -37.815168'
pattern = r'(-?\d+\.\d+).+?(-?\d+\.\d+)'
new_s = [(float(i.group(1)), float(i.group(2))) for i in re.finditer(pattern, s)]
# [(144.963286, -37.814212), (144.964498, -37.813854), (144.964962, -37.814806), (144.963711, -37.815168)]
import re
s = '144.963286 -37.814212 144.964498 -37.813854 144.964962 -37.814806 144.963711, -37.815168'
pattern = r'([\d\.+-]+)[^\d\.+-]+([\d\.+-]+)'
new_s = [(float(i.group(1)), float(i.group(2))) for i in re.finditer(pattern, s)]
# [(144.963286, -37.814212), (144.964498, -37.813854), (144.964962, -37.814806), (144.963711, -37.815168)]
import re
s = '144.963286 -37.814212 144.964498 -37.813854 144.964962 -37.814806 144.963711, -37.815168'
pattern = r'([\d\.+-]+)[^\d\.+-]+([\d\.+-]+)'
new_s = [(float(i.group(1)), float(i.group(2))) for i in re.finditer(pattern, s)]
# [(144.963286, -37.814212), (144.964498, -37.813854), (144.964962, -37.814806), (144.963711, -37.815168)]
import re
s = '144.963286 -37.814212 144.964498 -37.813854 144.964962 -37.814806 144.963711, -37.815168'
pattern = r'([\d\.-]+)[^\d\.-]+([\d\.-]+)'
new_s = [(float(i.group(1)), float(i.group(2))) for i in re.finditer(pattern, s)]
# [(144.963286, -37.814212), (144.964498, -37.813854), (144.964962, -37.814806), (144.963711, -37.815168)]
import re
s = '144.963286 -37.814212 144.964498 -37.813854 144.964962 -37.814806 144.963711, -37.815168'
s
pattern = sr'([\d\.replace+-]+)[^\d\.+-]+(',', ''[\d\.+-]+) # clean from ","
'
new_s = [tuple(map[(float(i.group(1)), float(i.splitgroup(2))) for i in re.findallfinditer(r'[^\s]+\s[^\s]+'pattern, s)]
# [(144.963286, -37.814212), (144.964498, -37.813854), (144.964962, -37.814806), (144.963711, -37.815168)]
import re
s = '144.963286 -37.814212 144.964498 -37.813854 144.964962 -37.814806 144.963711, -37.815168'
s = s.replace(',', '') # clean from ","
new_s = [tuple(map(float, i.split())) for i in re.findall(r'[^\s]+\s[^\s]+', s)]
# [(144.963286, -37.814212), (144.964498, -37.813854), (144.964962, -37.814806), (144.963711, -37.815168)]
import re
s = '144.963286 -37.814212 144.964498 -37.813854 144.964962 -37.814806 144.963711, -37.815168'
pattern = r'([\d\.+-]+)[^\d\.+-]+([\d\.+-]+)'
new_s = [(float(i.group(1)), float(i.group(2))) for i in re.finditer(pattern, s)]
# [(144.963286, -37.814212), (144.964498, -37.813854), (144.964962, -37.814806), (144.963711, -37.815168)]
Loading
Loading
lang-py