如何在forloop期间读取那些元组并转换为int类型?
How to read those tuple and convert int type during forloop?
我想在forloop中将tuple类型的数据转换成int类型。
如何读取那些元组数据?
(因为我想将这些数据转换成 datetime )
>>> print data
((1424794931452.0,), (1424794931645.0,), (1424794931821.0,),(1424794932014.0,), (1424794932189.0,))
我有 5 个元组数据(unixtime),这就是我想要做的。
for i in data:
con = int(data[i][0])
dt = datetime.fromtimestamp(con // 1000)
s = dt.strftime('%Y-%m-%d %H:%M:%S')
print(s)
我认为那些元组数据是 ([0][0],[1][0],[2][0],[3][0],[4][0]) 对吗?
有什么问题?我不太了解python。
i
已经是一个子元组,而不是 data
中的索引。所以它足够做:
from datetime import datetime
data = ((1424794931452.0,), (1424794931645.0,), (1424794931821.0,),(1424794932014.0,), (1424794932189.0,))
for i in data:
dt = datetime.fromtimestamp(i[0] // 1000)
s = dt.strftime('%Y-%m-%d %H:%M:%S')
print(s)
结果是:
2015-02-25 00:22:11
2015-02-25 00:22:11
2015-02-25 00:22:11
2015-02-25 00:22:12
2015-02-25 00:22:12
您有一个包含单个元素元组的元组。你可能想要这样的东西:
from datetime import datetime
data = ((1424794931452.0,), (1424794931645.0,), (1424794931821.0,),(1424794932014.0,), (1424794932189.0,))
for elem in data:
con = int(elem[0])
dt = datetime.fromtimestamp(con // 1000)
s = dt.strftime('%Y-%m-%d %H:%M:%S')
print(s)
输出:
2015-02-24 11:22:11
2015-02-24 11:22:11
2015-02-24 11:22:11
2015-02-24 11:22:12
2015-02-24 11:22:12
我认为问题在于 i 是数据中的元素,而不是索引。所以你应该这样做:
for i in data:
con = int(i[0])
dt = datetime.fromtimestamp(con // 1000)
s = dt.strftime('%Y-%m-%d %H:%M:%S')
print(s)
当您执行 for x in y
语法时,x 会在每次迭代时分配给序列的元素。要枚举索引,您必须使用内置函数 enumerate
,其中 returns 索引和项目。
我会这样做:
for con in (int(d[0]) for d in data):
do_something_with(con)
我想在forloop中将tuple类型的数据转换成int类型。 如何读取那些元组数据? (因为我想将这些数据转换成 datetime )
>>> print data
((1424794931452.0,), (1424794931645.0,), (1424794931821.0,),(1424794932014.0,), (1424794932189.0,))
我有 5 个元组数据(unixtime),这就是我想要做的。
for i in data:
con = int(data[i][0])
dt = datetime.fromtimestamp(con // 1000)
s = dt.strftime('%Y-%m-%d %H:%M:%S')
print(s)
我认为那些元组数据是 ([0][0],[1][0],[2][0],[3][0],[4][0]) 对吗?
有什么问题?我不太了解python。
i
已经是一个子元组,而不是 data
中的索引。所以它足够做:
from datetime import datetime
data = ((1424794931452.0,), (1424794931645.0,), (1424794931821.0,),(1424794932014.0,), (1424794932189.0,))
for i in data:
dt = datetime.fromtimestamp(i[0] // 1000)
s = dt.strftime('%Y-%m-%d %H:%M:%S')
print(s)
结果是:
2015-02-25 00:22:11
2015-02-25 00:22:11
2015-02-25 00:22:11
2015-02-25 00:22:12
2015-02-25 00:22:12
您有一个包含单个元素元组的元组。你可能想要这样的东西:
from datetime import datetime
data = ((1424794931452.0,), (1424794931645.0,), (1424794931821.0,),(1424794932014.0,), (1424794932189.0,))
for elem in data:
con = int(elem[0])
dt = datetime.fromtimestamp(con // 1000)
s = dt.strftime('%Y-%m-%d %H:%M:%S')
print(s)
输出:
2015-02-24 11:22:11 2015-02-24 11:22:11 2015-02-24 11:22:11 2015-02-24 11:22:12 2015-02-24 11:22:12
我认为问题在于 i 是数据中的元素,而不是索引。所以你应该这样做:
for i in data:
con = int(i[0])
dt = datetime.fromtimestamp(con // 1000)
s = dt.strftime('%Y-%m-%d %H:%M:%S')
print(s)
当您执行 for x in y
语法时,x 会在每次迭代时分配给序列的元素。要枚举索引,您必须使用内置函数 enumerate
,其中 returns 索引和项目。
我会这样做:
for con in (int(d[0]) for d in data):
do_something_with(con)