将字典中的 str 项转换为 int 并将 datetime.datetime 变量转换为 int
Converting str items in a dictionary to int and converting datetime.datetime variable to int
我知道这个 for 循环看起来像这样:
for i in my_dict[hostname]:
try:
if i == '':
except ValueError:
pass
i = int(i)
print(type(i))
它给我一个语法错误,我不确定在哪里或为什么。
不确定我是否真的理解您的目的,但是在 Python 中转换一个 int 字符串很简单:
>>> s = '123'
>>> int(s)
123
要将日期时间转换为 int,您可以将其转换为 timestamp
,然后再转换为 int
:
timestamp = datetime.timestamp(d)
时间戳已经是一个数字,您可以对其进行操作:
>>> d.timestamp()
1562855175.285529
>>> d.timestamp() - 1
1562855174.285529
正如@EuclidianHike 所说,您可以使用 int("str")
轻松地将 str 转换为 int
创建第二个列表,其中包含 'scores' 的值,但采用整数形式:
int_scores = []
for i in my_dict['scores']:
int_s = int(i)
int_scores.append(int_s) #Add indention as I cannot do it here on Whosebug
我知道这个 for 循环看起来像这样:
for i in my_dict[hostname]:
try:
if i == '':
except ValueError:
pass
i = int(i)
print(type(i))
它给我一个语法错误,我不确定在哪里或为什么。
不确定我是否真的理解您的目的,但是在 Python 中转换一个 int 字符串很简单:
>>> s = '123'
>>> int(s)
123
要将日期时间转换为 int,您可以将其转换为 timestamp
,然后再转换为 int
:
timestamp = datetime.timestamp(d)
时间戳已经是一个数字,您可以对其进行操作:
>>> d.timestamp()
1562855175.285529
>>> d.timestamp() - 1
1562855174.285529
正如@EuclidianHike 所说,您可以使用 int("str")
创建第二个列表,其中包含 'scores' 的值,但采用整数形式:
int_scores = []
for i in my_dict['scores']:
int_s = int(i)
int_scores.append(int_s) #Add indention as I cannot do it here on Whosebug