Как преобразовать тип кортежа в int на python?
Я новичок pyhton. Я хочу преобразовать результат sqlcommand (тип кортежа) в тип int. Как я могу это сделать?
import MySQLdb
db = MySQLdb.connect("localhost","root","password","database")
cursor = db.cursor()
cursor.execute("SELECT timestamp FROM unixdb")
u_data = cursor.fetchall()
>>> print u_data
((1424794931452.0,),)
тип u_data-кортеж, и я хочу получить тип int u_data.
2 ответов
у вас есть кортеж внутри кортежа. Итак, вы хотите первый элемент внешнего кортежа, который является u_data[0]
: внутренняя кортежа. И тогда вы хотите первый пункт этого, который является u_data[0][0]
. Это float
, поэтому, чтобы получить целое число, вы хотите обернуть все это в int()
на:
int(u_data[0][0])
в случае, если ваш запрос дает доход более чем одна метка. Вы можете получить список меток, изменив код следующим образом:
...
u_data, _ = cursor.fetchall()
u_data = [int(_) for _ in udata]