我在 Python 中从字符串到 int 的格式有一些问题:
obj=self.browse(cr,uid,ids,context=context)[0]
hour_den=obj.time_in[12:13]
hour_di=obj.time_out[12:13]
min_den=obj.time_in[15:16]
min_di=obj.time_out[15:16]
gl=hour_di-hour_den
pl=min_di-min_den
错误是:
unsupported operand type(s) for -: 'unicode' and 'unicode'
我怎样才能格式化它?? 请帮帮我! 谢谢!!!
请您参考如下方法:
不清楚obj是什么类型。但是你可以这样做。
obj=self.browse(cr,uid,ids,context=context)[0]
hour_den = hour_di = min_den = min_di = 0
try:
hour_den=int(obj.time_in[12:13])
hour_di=int(obj.time_out[12:13])
min_den=int(obj.time_in[15:16])
min_di=int(obj.time_out[15:16])
except ValueError:
return False
gl=hour_di-hour_den
pl=min_di-min_den
但最好在单独的函数中转换为 int
我怀疑你的索引不正确。 如果您需要手动解析固定格式的日期,如“2011-12-14 02:20:11”。您可以使用以下内容:
ts = "2011-12-14 02:20:11"
date, time = ts.split()
hours, mins, secs = time.split(':')
try:
hours=int(hours)
mins=int(mins)
secs=int(secs)
except ValueError:
return False
