python将时分秒转换成秒的实例

yipeiwu_com6年前Python基础

处理数据的时候遇到一个问题,从数据库里导出的数据是时分秒的格式:hh:mm:ss ,现在我需要把它转换成秒,方便计算。

原数据可能分两种情况,字段有可能是文本字符串类型的,也有可能是时间类型,他们的处理方法不一样,所以我们分开讨论。

1、字符串类型转换成秒

可以将其用 ‘:' 分隔开,分别得出时、分、秒,即可计算出秒数。所以我们定义如下函数:

def str2sec(x):
  '''
  字符串时分秒转换成秒
  '''
  h, m, s = x.strip().split(':') #.split()函数将其通过':'分隔开,.strip()函数用来除去空格
  return int(h)*3600 + int(m)*60 + int(s) #int()函数转换成整数运算

2、时间类型转换成秒

本身如果是时间类型的格式,我们可以很方便的使用 python 内置的 datetime 模块解决问题,我们可以定义以下函数:

def time2sec(y):
  '''
  时间类型时分秒转换成秒
  '''
  h = y.hour #直接用datetime.time模块内置的方法,得到时、分、秒
  m = y.minute
  s = y.second
  return int(h)*3600 + int(m)*60 + int(s) #int()函数转换成整数运算

首先我们导入数据:

import pandas as pd
data = pd.read_excel(r"C:\Users\chih-cheng\Desktop\data.xlsx")
#导入数据
data.dtypes
#查看数据类型

运行结果:

结果发现“工作总时长”字段并不是字符串类型,所以我们使用第二个定义的函数即可解决问题,代码如下:

data['工作总时长'] = data['工作总时长'].apply(time2sec)
#直接将定义好的 time2sec()函数作用于元素即可
print(data)

结果如下:

大功告成。

以上这篇python将时分秒转换成秒的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python自动循环定时开关机(非重启)测试

做手机整机测试的,肯定有开关机的需求,关机,几分钟后再开机(一直循环操作测试,就是不能重启);这个需求在关机后就没有办法开机了,任何脚本命令都不行,除非做APP;重启功能的缺点是关机后就...

Python与Java间Socket通信实例代码

Python与Java间Socket通信   之前做过一款Java的通讯工具,有发消息发文件等基本功能.可大家也都知道Java写的界面无论是AWT或Swing,那简直不是人看的,对于我们...

python3+PyQt5实现自定义分数滑块部件

python3+PyQt5实现自定义分数滑块部件

本文通过Python3+PyQt5实现自定义部件–分数滑块。它既能支持键盘也支持鼠标,使用物理(视口)坐标通过绘制方式显示。 #!/usr/bin/env python3 impo...

python入门教程 python入门神图一张

python入门教程 python入门神图一张

初试牛刀 假设你希望学习Python这门语言,却苦于找不到一个简短而全面的入门教程。那么本教程将花费十分钟的时间带你走入Python的大门。本文的内容介于教程(Toturial)和速查手...

Python字符串对象实现原理详解

Python字符串对象实现原理详解

在Python世界中将对象分为两种:一种是定长对象,比如整数,整数对象定义的时候就能确定它所占用的内存空间大小,另一种是变长对象,在对象定义时并不知道是多少,比如:str,list, s...