-
python对日期排序_python 日期排序的实例代码
2020-12-03 10:53:28问题1:如果日期中有千年以前的情况(没法用格式化函数),如('2010-11-23','1989-3-7','2010-1-5','978-12-1','2010-2-4')参照方法1问题2:如果日期中没有千年以前的情况,做法就很多了。参照方法2和方法3# -*- ...问题1:如果日期中有千年以前的情况(没法用格式化函数),如('2010-11-23','1989-3-7','2010-1-5','978-12-1','2010-2-4')参照方法1
问题2:如果日期中没有千年以前的情况,做法就很多了。参照方法2和方法3
# -*- coding: utf-8 -*-
import time
from operator import itemgetter
arr=('2010-11-23','1989-3-7','2010-1-5','978-12-1','2010-2-4')
def date_sort1(x):
ls=list(x)
#用了冒泡排序来排序,其他方法效果一样
for j in range(len(ls)-1):
for i in range(len(ls)-j-1):
lower=ls[i].split('-')
upper=ls[i+1].split('-')
for s in range(3):
if int(lower[s])>int(upper[s]):
ls[i],ls[i+1]=ls[i+1],ls[i]
break
elif int(lower[s])
break
ar=tuple(ls)
return ar
ar=('2010-11-23','1989-3-7','2010-2-4','2010-1-5')
def date_sort2(x):
ls=list(x)
dic={}
for l in ls:
#返回用秒数来表示时间的浮点数
dic[l]=time.mktime(time.strptime(l, '%Y-%m-%d'))
dic=sorted(dic.iteritems(), key=itemgetter(1))
sorted_items=[keys[0] for keys in dic]
'''
items=dic.items()
backitems=[[v[1],v[0]] for v in items]
backitems.sort()
sorted_items=[keys[1] for keys in backitems]
'''
'''
items=dic.items()
backitems=[[v[0],v[1]] for v in items]
backitems=sorted(backitems, key=lambda x : x[1])
sorted_items=[keys[0] for keys in backitems]
'''
return tuple(sorted_items)
import datetime
def date_sort3(x):
ls=list(x)
#用了冒泡排序来排序,其他方法效果一样
for j in range(len(ls)-1):
for i in range(len(ls)-j-1):
lower=datetime.datetime.strptime(ls[i], '%Y-%m-%d')
upper=datetime.datetime.strptime(ls[i+1], '%Y-%m-%d')
if lower>upper:
ls[i],ls[i+1]=ls[i+1],ls[i]
return tuple(ls)
print date_sort1(arr)
print date_sort2(ar)
print date_sort3(ar)
运行结果:
('978-12-1', '1989-3-7', '2010-1-5', '2010-2-4', '2010-11-23')
('1989-3-7', '2010-1-5', '2010-2-4', '2010-11-23')
('1989-3-7', '2010-1-5', '2010-2-4', '2010-11-23')
正则表达式同样可以处理这类问题,下面是正则表达式的解决方案。
#利用正则表达式
import re
data = ['2010-11-23','1989-3-7','2010-1-5','978-12-1','2010-2-4']
patt = '(\d+)-(\d+)-(\d+)'
#交换排序
for i in range(len(data)-1):
for x in range(i+1, len(data)):
j = 1
while j<4:
lower = re.match(patt, data[i]).group(j)
upper = re.match(patt, data[x]).group(j)
#print lower,upper
if int(lower) < int(upper):
j = 4
elif int(lower) == int(upper):
j += 1
else:
data[i],data[x] = data[x],data[i]
j = 4
print data
总结
以上所述是小编给大家介绍的python 日期排序的实例代码 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
-
python分组后对日期排序_python对分组进行排序
2020-12-29 08:31:59python 分组排序问题请教按照城市进行分组,然后按照数值进行排序。多谢各位def top(self,n=5): return self.sort('num',ascending=True)[:n] 表名.groupby(['city']).apply(top)按照城市进行分组,然后按照数值进行...python 分组排序问题请教
按照城市进行分组,然后按照数值进行排序。多谢各位
def top(self,n=5): return self.sort('num',ascending=True)[:n] 表名.groupby(['city']).apply(top)
按照城市进行分组,然后按照数值进行排序,返回序列值。多谢各位
这个应用可以使用JavaConfig完成配置。我把它切分为下面几个部分: ServicesConfig(服务配置) 无需扫描组件,配置真的非常简单: @Configuration public class ServicesConfig { @Autowired private AccountRepository accountRepository; @Be
怎么对python中列表类型进行分组
如下,将不同的类型及值放到字典中 例如列表lst有int,list,tuple,dict,str,float等类型。 lst = [1,2,3,'54',45.0,'784','string',[1,2,3],(3,6,7),{"no1":1,"no2":2}] #定义dict_lstype,来对列表lst进行分组 dict_lstype={} for i in lst: ty
如下,将不同的类型及值放到字典中 例如列表lst有int,list,tuple,dict,str,float等类型。 lst = [1,2,3,'54',45.0,'784','string',[1,2,3],(3,6,7),{"no1":1,"no2":2}] #定义dict_lstype,来对列表lst进行分组dict_lstype={} for i in lst: typ
如下,将不同的类型及值放到字典中例如列表lst有int,list,tuple,dict,str,float等类型。lst=[1,2,3,'54',45.0,'784','string',[1,2,3],(3,6,7),{"no1":1,"no2":2}]#定义dict_lstype,来对列表lst进行分组dict_lstype={}foriinlst:type_i=type(i
那画界面那儿,分别双击“打开”、“另存为”这两个按钮,会出现一个对话框,点确定,消息函数就加上了并跳到相应的函数体,在里面写内容就好了。 还可以用菜单栏的VIEW->ClassWizard下的MessageMap功能,处理消息函数。
In [1]: from itertools import groupby In [2]: data = ["
acxcfxxc"] In [3]: f = lambda s, n=[]: s[0]=='1' and n.append(0) or l
怎样用python进行年龄分段并且CSS布局HTML小编今天和大家分享和排序?
如题,怎样用最简单的Python语言将具体的年纪进行分段并且统计各年龄段def input(): return [ {'age': 16, 'count': 20, }, {'age': 17, 'count': 14, }, {'age': 20, 'count': 17, }, ]def process(data): result = {} for item in data: key = int(item['age']/10)*10 if key not in result: result[key] = 0 resu
Python 中 dataframe.groupby按多条件分组怎么做?
如题,我有一组数据,格式大致为(columns = ['YEAR','MONTH','DAY','HOU df.groupby(['YEAR','MONTH','DAY','HOUR'])['TITLE'].apply(lambda x:x.tolist())或df.groupby(['YEAR','MONTH','DAY','HOUR'])['TITLE'].apply(lambda x:','.join(x.tolist()))
python 标准输入 怎么判断最后一行 我要分组并排序
你是指从stdin输入吗? 最简单的: import sys for line in sys.stdin: print line 或者: import fileinput for line in fileinput.input(): print line 以上两种方法需要等待EOF才会开始处理,也就是在win下面的Ctrl+Z, *nix下的Ctrl+d
-
python分组后对日期排序_Django-按日期分组
2021-02-10 00:38:49不过,您可以先执行查询,得到结果,然后使用Pythongroupby()函数来排序返回的行。下面是按日期分组日期时间的一个小示例:from pprint import pprintfrom datetime import datetimefrom itertools import ...我不确定Django的ORM是否可以在查询过程中执行日期时间到日期的转换。不过,您可以先执行查询,得到结果,然后使用Pythongroupby()函数来排序返回的行。下面是按日期分组日期时间的一个小示例:from pprint import pprint
from datetime import datetime
from itertools import groupby
rows = [('Frodo party', datetime(3018, 9, 22, 10, 38)),
('Nazgul defeat Rangers', datetime(3018, 9, 22, 11, 57)),
('Frodo finishes packing', datetime(3018, 9, 23, 10, 59)),
('Gandalf tames Shadowfax', datetime(3018, 9, 23, 13, 11)),
('Gandalf crosses the Isen', datetime(3018, 9, 24, 18, 46))]
for key, values in groupby(rows, key=lambda row: row[1].date()):
print('-')
pprint(key)
pprint(list(values))
如您所见,您必须为groupby()提供一个key函数,该函数接受它正在分组的对象之一,并提取分组应根据的值-在本例中,它用[1]获取每行中的第二个项,然后调用Python datetime方法date()来提取不带几小时几分钟。脚本的输出如下所示(函数pprint()只是一个奇特的“print”语句,它缩进了输出,Django代码中不需要它!)以下内容:-
datetime.date(3018, 9, 22)
[('Frodo party', datetime.datetime(3018, 9, 22, 10, 38)),
('Nazgul defeat Rangers', datetime.datetime(3018, 9, 22, 11, 57))]
-
datetime.date(3018, 9, 23)
[('Frodo finishes packing', datetime.datetime(3018, 9, 23, 10, 59)),
('Gandalf tames Shadowfax', datetime.datetime(3018, 9, 23, 13, 11))]
-
datetime.date(3018, 9, 24)
[('Gandalf crosses the Isen', datetime.datetime(3018, 9, 24, 18, 46))]
-
python分组后对日期排序_Python列表按日期分组
2021-01-12 08:16:55说我有一个列表看起来像这样:[(datetime.datetime(2013, 8, 8, 1, 20, 15), 2060), (datetime.datetime(2013, 8, 9, 1, 6, 14), 2055), (datetime.datetime(2013, 8, 9, 1, 21, 1), 2050), (datetime.datetime(2013...说我有一个列表看起来像这样:
[(datetime.datetime(2013, 8, 8, 1, 20, 15), 2060), (datetime.datetime(2013, 8, 9, 1, 6, 14), 2055), (datetime.datetime(2013, 8, 9, 1, 21, 1), 2050), (datetime.datetime(2013, 8, 10, 1, 5, 49), 2050), (datetime.datetime(2013, 8, 10, 1, 19, 51), 2050), (datetime.datetime(2013, 8, 11, 2, 4, 53), 2050), (datetime.datetime(2013, 8, 12, 0, 29, 45), 2050), (datetime.datetime(2013, 8, 12, 0, 44, 13), 2050), (datetime.datetime(2013, 8, 13, 0, 34, 13), 2050), (datetime.datetime(2013, 8, 13, 0, 47, 29), 2050), (datetime.datetime(2013, 8, 14, 1, 30, 39), 2050), (datetime.datetime(2013, 8, 14, 1, 33, 51), 2050), (datetime.datetime(2013, 8, 15, 0, 41, 1), 2050), (datetime.datetime(2013, 8, 15, 0, 54, 45), 2050), (datetime.datetime(2013, 8, 16, 0, 29, 57), 1950), (datetime.datetime(2013, 8, 16, 0, 43, 11), 1950), (datetime.datetime(2013, 8, 17, 0, 27, 4), 1950), (datetime.datetime(2013, 8, 17, 0, 42, 30), 1950), (datetime.datetime(2013, 8, 18, 0, 26, 26), 1950), (datetime.datetime(2013, 8, 18, 0, 43, 11), 1950), (datetime.datetime(2013, 8, 19, 0, 41, 49), 1950), (datetime.datetime(2013, 8, 20, 1, 10, 23), 1950), (datetime.datetime(2013, 8, 20, 1, 23, 44), 1950), (datetime.datetime(2013, 8, 21, 0, 47, 25), 1950), (datetime.datetime(2013, 8, 21, 1, 0, 12), 1950), (datetime.datetime(2013, 8, 22, 0, 45, 21), 1950), (datetime.datetime(2013, 8, 22, 1, 4, 33), 1950), (datetime.datetime(2013, 8, 23, 0, 51, 27), 1950), (datetime.datetime(2013, 8, 23, 1, 6, 36), 1950), (datetime.datetime(2013, 8, 24, 0, 41, 3), 1950), (datetime.datetime(2013, 8, 24, 0, 53, 14), 1950), (datetime.datetime(2013, 8, 25, 0, 29, 24), 1950), (datetime.datetime(2013, 8, 25, 0, 42, 40), 1950), (datetime.datetime(2013, 8, 26, 0, 28, 13), 1950), (datetime.datetime(2013, 8, 26, 0, 43, 30), 1950), (datetime.datetime(2013, 8, 27, 0, 30, 1), 1950), (datetime.datetime(2013, 8, 27, 0, 43, 43), 1950), (datetime.datetime(2013, 8, 28, 0, 33, 19), 1950), (datetime.datetime(2013, 8, 28, 0, 49, 11), 1950), (datetime.datetime(2013, 8, 29, 0, 26, 49), 1950), (datetime.datetime(2013, 8, 29, 0, 41, 21), 1950), (datetime.datetime(2013, 8, 30, 0, 26, 13), 1950), (datetime.datetime(2013, 8, 30, 0, 42, 9), 1950), (datetime.datetime(2013, 8, 31, 0, 23, 40), 1950), (datetime.datetime(2013, 8, 31, 0, 39, 49), 1950), (datetime.datetime(2013, 9, 1, 0, 22, 2), 1950), (datetime.datetime(2013, 9, 1, 0, 38, 16), 1950), (datetime.datetime(2013, 9, 2, 0, 21, 2), 1950), (datetime.datetime(2013, 9, 2, 0, 36, 19), 1950), (datetime.datetime(2013, 9, 3, 0, 22, 16), 1950), (datetime.datetime(2013, 9, 3, 0, 39, 2), 1900)]
很明显,你可以看到这是一个元组列表,每个元组中的第一个元素是一个时间戳.已经格式良好,生成者:
datetime.strptime(record[0], timeFormat)
第二个要素是监测值.但是,每天可能会有多个记录.例如,datetime.datetime(2013,8,9 ..)上有两条记录,它们有两个不同的值2055和2050.我想要的是实际上每天的最大值.
所以在这种情况下. 2055年将是(2013年,8,9)的唯一记录.
我想知道在Python中有没有方便的方法来做到这一点.像mysql类似的东西:
select
date(timestamp),
max(value)
from table
group by date(timestamp)
mysql语句只是为了展示这个想法,我绝对想要一个python解决方案.
-
python对日期排序_python对列表中的字典按[key]时间排序
2020-12-03 10:53:28#coding:utf-8"""author:the5firedate:2012-10-10function:sort dict list by key"""importdatetimeresult_data =[]result_data.append({'id': 2,'create_time': '2012-10-8 11:09:22',})result_data.append({'id':... -
python分组后对日期排序_python-如何按日期范围分组
2020-12-19 07:48:39您可以这样操作:In [252]: df.groupby(['employer_key','account_id']) \...: .apply(lambda x: len(x.query("'2015-11-01' <= login_date <= '2016-04-30'")) > 0) \...: .reset_index()Out[252]:... -
对日期排序及用二分法查找
2016-11-19 17:11:24public class TestSort { public static void main(String[] args) { Date[] date = new Date[5]; date[0] = new Date(2006,6,7); date[1] = new Date(2004,5,7); date[2] = new -
python分组后对日期排序_分组后按时间排序每组取最新一条记录
2020-12-19 07:48:42先按币别分组 筛选出你小于指定日期的最大时间和币别集合select cur_Id,max(pre_time)as preTime from fc_excrate_adjust fe where fe.pre_time<=to_date('2020-05-11', 'yyyy-MM-dd') group by cur_Id在用原表内... -
python对日期排序_python按修改时间顺序排列文件的实例代码
2020-12-08 19:14:07file_by_time(file_path): files = os.listdir(file_path) if not files: return else: files = sorted(files, key=lambda x: os.path.getmtime(os.path.join(file_path, x)))#格式解释:对files进行排序.x是files的... -
sort可以对日期排序吗_[译]正确使用 sort() 方法
2020-12-10 09:48:34我们可以对数据结构中的日期和任何其他类型的对象执行相同的操作。 5. 关于性能方面 如果我们想对非常大的数组进行排序,我们必须记住。sort() 方法的支持函数将被多次调用,我们必须避免在这个函数中执行许多操作... -
【Excle】在重复数据中对日期排序并查询最新的一条记录
2019-10-01 15:45:12现在存在以下数据:需要查询出以下数据姓名 日期张三 2017-12-14李四 2017-12-16在E1中写入以下公式:=IF(D2=MAX(IF($C$2:$C$7=C2,$D$2:$D$7)),MAX(IF($C$2:$C$7=C2,$D$2:$D$7)),"")然后CTRL+Shift+ENTER,接着下拉... -
C程序(求最长子串、预编译指令、用函数指针对日期排序、用va_list对字符串排序、时间函数、实心空心菱形)
2011-08-20 16:42:393.用函数指针对日期排序 #include #include struct DATE; #define SWAP(x,y) {DATE t;t=(x);(x)=(y);(y)=t;} #define N 10 //the number of DATE array typedef struct DATE { int year... -
java 日期排序_java对日期实现排序
2021-02-12 10:03:51*/ @Override public int compare(Guestbook o1, Guestbook o2) { //对日期字段进行升序,如果欲降序可采用before方法 if(o1.getPubdate().after(o2.getPubdate())) return 1; return -1; } } //排序 ... -
java日期排序_java实现日期排序问题
2021-02-12 16:49:37展开全部java按文件日期排序方法,下面以对62616964757a686964616fe59b9ee7ad9431333337623431C盘Java目录下文件进行按日期排序为例://引用java.io包里的所有类importjava.io.*;importjava.util.*;... -
利用冒泡排序对日期进行排序
2018-09-18 16:53:56/*日期排序*/ public class DataSort { public static void main(String[] args) { Date[] days = new Date[5]; days[0] = new Date(2006, 5, 4); days[1] = new Date(2006, 7, 4); days[2] ... -
python对日期型数据排序_python – pandas dataframe按日期排序
2021-02-10 09:17:00但是,在对索引进行排序时,它不会产生我想要的结果print(df.head())df['Date'] = pd.to_datetime(df['Date'])df.index = df['Date']del df['Date']df.sort_index()print(df.head())这是结果:Date ... -
Java后端如何对日期做储存并可以以日期排序
2019-04-24 23:29:05Java后端如何对日期做储存并可以以日期排序需求案例:对User创建时间排序做法具体用Long储存对象属性,get/set方法在service中准备存对象时候,创建时间戳对对象属性赋值User对象实现Comparable接口,实现compareTo方法... -
ssm和sql server 对varchar日期排序排序
2018-04-23 20:30:45sql中添加 cast(sort as Integer) ASC,cast(releaseTime as DATETIME) DESC -
js对日期进行升序排序
2015-09-30 15:24:42js对日期进行升序排序 -
日期排序react_使用React对表数据进行排序
2021-01-13 16:55:17通常,当拥有包含信息的表时,希望能够按升序或降序对表中的信息进行排序,尤其是在处理数字时。先决条件在我们继续之前,让我们看看我们将在本教程中使用的内容:Foundation - 用于一般样式。我们为表格样式使用它... -
按照日期 对List排序
2021-02-28 14:09:33List排序 ArrayList sort() 方法 arraylist.sort(Comparator c) 看一下源码: default void sort(Comparator<? super E> c) { Object[] a = this.toArray(); Arrays.sort(a, (Comparator) c); ... -
Android中对日期进行排序
2019-10-05 00:46:14最近在项目中需要将读取的数据按照时间的降序进行排序。...3.使用冒泡排序对List中元素按照Date进行排序 具体代码如下: 1 //将List按照时间倒序排列 2 @SuppressLint("SimpleDateFormat") 3 p... -
java如何对类对象进行排序:以日期排序为例
2020-12-29 21:49:43我们以时间排序为例,来实现java对类对象的排序,设java某class的定义如下: class cmpData { String Name; String sDate; public cmpData(String Name,String strDate) { this.Name=Name; this.sDate=strDate; } ... -
ant-design-vue table对日期数据排序
2021-01-04 15:16:24ant-design-vue table对日期数据排序一、js对日期数据排序二、在 a-table 中使用 一、js对日期数据排序 使用sort()方法 // let data = [ { id:'1', time:'2020-01-01 23:53:23' }, { id:'2', time:'2021-... -
python对日期型数据排序_如何对日期执行数学运算并用Python对它们进行排序?
2020-12-30 05:58:26你同时问了几个问题,所以我按顺序回答。在要筛选出"Date"项,请使用^{} function,如下所示:dates = ['2011-06-18', 'Date', '2010-01-13', '1997-...= 'Date', dates)您可能需要将列表中日期项的数据类型转换为^{... -
JavaScript对表格或元素按文本,数字或日期排序的方法
2020-10-24 04:41:41主要介绍了JavaScript对表格或元素按文本,数字或日期排序的方法,涉及javascript页面元素操作及排序的相关技巧,需要的朋友可以参考下
-
Bootstrap鼠标悬停下拉导航总结
-
【Python-随到随学】 FLask第一周
-
FFmpeg4.3系列之16:WebRTC之小白入门与视频聊天的实战
-
linux基础入门和项目实战部署系列课程
-
中央广播电视大学《液压气动控制技术课程设计》期末总复习资料(含答案).pdf
-
fixed定位元素被安卓、ios键盘顶起的解决办法
-
公司核心业务数据——ONTAP 平台虚拟化集群存储介绍
-
MySQL 管理利器 mysql-utilities
-
classes12-10.2.0.1.0.jar.rar
-
NFS 网络文件系统
-
中央广播电视大学《综合英语3》期末总复习资料(含答案).pdf
-
Docker从入门到精通
-
100内加减法自动生成器.rar
-
心怀梦想脚踏实地幼儿园上学期开学工作会议ppt.ppt
-
FTP 文件传输服务
-
班主任主题班会育人课件:开学第一课PPT.ppt
-
糖果
-
不同转速对离心泵性能影响的试验研究.rar
-
QRCode.js:使用 JavaScript 生成二维码
-
基于Gan 技术的reid