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设计】。

相关文章

Mac安装python3的方法步骤

Mac安装python3的方法步骤

Python有两个版本,一个是2.x版,一个是3.x版,这两个版本是不兼容的。 现在 Mac 上默认安装的 python 版本为 2.7 版本,若 安装 新版本需要 通过 该地址进行下载...

Python匹配中文的正则表达式

正则表达式并不是Python的一部分。正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十分强大。得益于这一点,在提供...

利用python获取Ping结果示例代码

前言 本文主要跟大家分享了关于利用python获取Ping结果的相关内容,分享出来供大家参考学习,下面话不多说,来一起看看详细的介绍吧。 示例代码: # -*- coding: ut...

Python re 模块findall() 函数返回值展现方式解析

findall 函数: 在字符串中找到正则表达式所匹配的所有子串,并返回一个列表,如果没有找到匹配的,则返回空列表。 注意: match 和 search 是匹配一次 findall...

python web框架Flask实现图形验证码及验证码的动态刷新实例

下列代码都是以自己的项目实例讲述的,相关的文本内容很少,主要说明全在代码注释中 自制图形验证码 这里所说的图形验证码都是自制的图形,通过画布、画笔、画笔字体的颜色绘制而成的。将验证码封装...