Я выполняю поиск координат широты/долготы в сообщениях в таблице, акар. , Directional char комбо, например N или NW, за которыми следуют 5 цифр, сценарий запускается, однако он просто дает мне такие строки:
<_sre.SRE_Match object at 0x7f79ce81b440>
<_sre.SRE_Match object at 0x7f79ce81b440>
<_sre.SRE_Match object at 0x7f79ce81b440>
<_sre.SRE_Match object at 0x7f79ce81b440>
<_sre.SRE_Match object at 0x7f79ce81b440>
<_sre.SRE_Match object at 0x7f79ce81b440>
Я хочу увидеть результаты моего сценария (широта/долгота), я пробовал эти решения, и все они привели к тому, что терминал просто остановился навсегда, когда я пытаюсь выполнить код. Также я попробовал предложение для.search() отсюда с тем же результатом. Попробовал опцию Findall и получил бесконечные строки PBI D024
Я использую VM на основе Unix (ScotchBox) для запуска mysql на терминале в этой среде, Windows 10 PC
Код:
#!/usr/bin/python
# from: http://www.mysqltutorial.org/python-mysql-query
import mysql.connector
import re
import datetime
# Open connection. My database is named planes. If you named yours something else
# then change the database= here.
db = mysql.connector.connect(host='localhost',database='planes',user='root',password='root')
# prepare a cursor "SELECT * from planes.acars limit 10")
cursor = db.cursor ( )
# Do the query -- the limit is just to keep this small, you will not need it
query = ("SELECT msg_text FROM acars "
"WHERE date_time_stamp BETWEEN %s AND %s")
first_of_june = datetime.date(2016, 6,1)
last_of_june = datetime.date(2016, 6,30)
cursor.execute(query, (first_of_june, last_of_june))
# Fetch rows
data = cursor.fetchone ( )
while data is not None:
coordinates = re.compile ("N|NW|S|SW|E|NE|S|SE^[0-9]{5}")
print(coordinates.search(str(data)))
data = cursor.fetchone()
# close cursor
cursor.close ( )
# close connection
db.close ( )
Любая помощь высоко ценится!!
"Объект SRE_Match" означает, что поисковый запрос получил успешный хит шаблона поиска.
Мы можем распечатать все согласованные результаты, используя sre_match_object.groups()
Повторная запись цикла while была прервана версией результатов поиска:
while data is not None:
coordinates = re.compile ("N|NW|S|SW|E|NE|S|SE^[0-9]{5}")
match_obj = coordinates.search(str(data))
if match_obj:
print(match_obj.groups())
data = cursor.fetchone()
-Ram
print(coordinates.search(str(data)).group(0))
должно работать