d1

获取字典中具有最大值的键?

二次信任 提交于 2019-12-20 10:33:23
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 我有一 dictionary :键是字符串,值是整数。 例: stats = {'a':1000, 'b':3000, 'c': 100} 我想用 'b' 作为答案,因为它是具有更高价值的钥匙。 我使用带有反向键值元组的中间列表进行了以下操作: inverse = [(value, key) for key, value in stats.items()] print max(inverse)[1] 那是更好(或更优雅)的方法吗? #1楼 我已经测试了许多变体,这是用最大值返回字典键的最快方法: def keywithmaxval(d): """ a) create a list of the dict's keys and values; b) return the key with the max value""" v=list(d.values()) k=list(d.keys()) return k[v.index(max(v))] 为了给您一个想法,以下是一些候选方法: def f1(): v=list(d1.values()) k=list(d1.keys()) return k[v.index(max(v))] def f2(): d3={v:k for k,v in d1.items()}

day 76 drf

烈酒焚心 提交于 2019-12-04 21:14:11
1、html常用标签 常用标签 html head body div span br hr a img i b u h1~h6 p ul>li table>(caption)thead|tbody|tfoot>tr>th|td form>input|label|textarea|select>option 2、css选择器,css三种布局 选择器: 基础:* div .div #div !important 群组:div,h1,a {} 后代子代:body div | body > div 兄弟相邻:.d1~.d2 | .d1+.d2 交叉选择器:.d1.d2 | div.d1 div.d1#d.d2 <div class="d1 d2" id="d"> 属性选择器:[titile] 伪类选择器::hover :active :focus :blur :change :checked :after{content:""} :before{content:""} :nth-child() :nth-of-type() 3、js四种变量,js字符串、数组、对象的操作方法,js可变长参数 四种变量: let a = 1; // 不可以重复声明var b = 2; // 可以重复声明 var b = 4;const c = 3; // 常量d = 4; // 全局js字符串、数组

oracle相邻表记录交换(单双两两交换)

情到浓时终转凉″ 提交于 2019-12-04 19:47:27
在博客园的博问中看到了一个这样的提问:一个表中有id和name两个字段,id是连续非空不重复的,想要交换相邻表记录的name值(单双两两交换)。 另外,如果最后的单独行没有对应的下一行匹配记录的话,就不更新最后的单独行记录。 觉得有点意思,就试着实现一下(Oracle),并记录下来。 创建一个diosos表。 -- 如果表存在,就删除表(方便测试) drop table diosos; -- 创建表 create table diosos(id int, name varchar(64)); 往表中插入数据。 -- 插入数据 insert into diosos(id, name) values(1, 'one'); insert into diosos(id, name) values(2, 'two'); insert into diosos(id, name) values(3, 'three'); insert into diosos(id, name) values(4, 'four'); insert into diosos(id, name) values(5, 'five'); insert into diosos(id, name) values(6, 'six'); insert into diosos(id, name) values(7, 'seven');

1117作业

穿精又带淫゛_ 提交于 2019-12-04 18:42:59
js代码: 编写代码,将当前日期按“2017-12-27 11:11 星期三”格式输出。 const WEEKMAP={ 0:'星期天', 1:'星期一', 2:'星期二', 3:'星期三', 4:'星期四', 5:'星期五', 6:'星期六' }; function showTime() { var d1=new Date(); var year=d1.getFullYear(); var month=d1.getMonth()+1; var day=d1.getDay(); var hour=d1.getHours(); var minutes=d1.getMinutes()<10?"0"+d1.getMinutes():d1.getMinutes(); var week=WEEKMAP[d1.getDay()]; var starTime=` \({year}-\) {month}-${day} \({hour}:\) {minutes} ${week} `; console.log(starTime) } showTime() 来源: https://www.cnblogs.com/ztzdhbg/p/11878192.html

设计模式之Bridge模式

对着背影说爱祢 提交于 2019-12-04 05:41:04
本文内容是通过学习《设计模式解析》 by - Alan Shalloway, James R. Trott 一书所总结的心得。 博主想通过先提出问题,再解决问题的方式来让读者实际体验一把Bridge模式的优势。(这也是《设计模式解析》一书中采用的讲解流程,对于读者理解会有很大帮助)文中的案例也是使用的书中提供的案例。 1.提出问题 先看需求:有两个绘制实例D1和D2,它们都提供了drawLine和drawCircle方法,但是方法的内部实现逻辑是不一样的。需要分别使用它们来绘制Rectangle和Circle两种形状。请问要如何实现? 各位看官不如自己思考一下自己将如何实现这个需求。。。 首先,我们创建一个Shape类,创建D1Shape和D2Shape并且它们都继承于Shape,它们分别对应于D1和D2两个绘制实例。 其次,为了解耦我们让Rectangle和Circle类负责自己的绘制,比如Rectangle的绘制就在draw()方法中完成,实现过程就是调用D1的drawLine方法四次即可。 最后,因为有两种绘制实例D1和D2,那么就需要分别与之对应的D1Rectangle,D2Rectangle,D1Circle,D2Circle,它们四个分别继承于D1Shape和D2Shape类。 那么类图如下所示: OK,需求已经实现了。 但是问题也很明显,如果此时要增加一种形状Oval

Python,datetime笔记。

蹲街弑〆低调 提交于 2019-12-04 05:13:02
time今天刚结束,趁热打铁,把datetime也干掉算了。看了一般调试电脑去了,现在回来了。 前面学的date感觉更多的是面向过程的,里面用的很多函数。 那datetime更加像一个面向对象的操作。 网上查了点资料,书上看了一些,准备挑一些自己认为的重点讲一下算了。 先说一下datetime.datetime好了,以前我就一直会用datetime.datetime.now() 当运行一个d1=datetime.datetime.now()或者d1=datetime.datetime.(2019,1,1) 其实本质是在完成实例化,所以,该对象d1会又很多定义的方法,属性。 由于是对实例的操作,不同的实例之间还能进行一些加减操作,返回datetime.timedelta对象。 In [244]: d1 = datetime.datetime(1985,11,5) In [245]: d2 = datetime.datetime.now() In [246]: isinstance(d1,datetime.datetime) Out[246]: True In [247]: d1-d2 Out[247]: datetime.timedelta(days=-12425, seconds=74030, microseconds=689037) In [248]: d1.isoweekday

字典的常规操作

孤街醉人 提交于 2019-12-03 21:30:37
声明:#字典是一个可变类型:其中key不可变,value可变 格式key:value """ 1、优先掌握的 1、按照key:value映射关系取值(可存可取) 2、成员运算in,not in # 默认判断key 3、len() # 获取当前字典中键值对的个数 """ 1.#字典的三种定义方式 d1 = {'name':'egon','age':2} print(d1) # 第二种方式: dict() d1 = dict(name='sean',age=1) print(type(d1)) # 第三种方式:zip 了解 l1 = ['name','egon'] l2 = ['age',2] z1 = zip(l1,l2) print(z1) print(dict(z1)) 2. 字典的增删改取 d1 = {'name':'egon','age':2,'hopy':'ee'} #增操作d1[''weight] = 178#删操作 list 有remove del 彻底删除d1.clear() 清除字典中的数据 # d1.pop() pop('key') 指定键删除,返回值是key的value# d1.popitem() 随机删除键值对 返回值是一个元组 #取操作 d1 = {'name':'egon','age':2,'hopy':'ee'} print(d1['name'])#

第六天

佐手、 提交于 2019-12-03 20:54:21
第六天 列表的内置方法 count 统计当前列表内指定元素的个数 l1 = ['jinyi','wanglu','qiaobi','love','jinyi']print(l1.count('jinyi'))# 2 index 获取当前指定元素的索引值,还可以指定查找范围 l1 = ['jinyi','wanglu','qiaobi','love','jinyi']print(l1.index('jinyi',1,5))# 4 sort 排序,在原列表上进行排序操作 s1 = [2, 1, 4, 6, 8, 3, 5, 6]s1.sort()print(s1) # 正序:[1, 2, 3, 4, 5, 6, 6, 8]s1.sort(reverse=True)print(s1) #倒序:[8, 6, 6, 5, 4, 3, 2, 1]s2 = sorted(s1,)print(s2) ## python的内置函数,在排序时生成了一个新列表 clear 清空列表数据 s1 = [2, 1, 4, 6, 8, 3, 5, 6]s1.clear()print(s1) 队列\堆栈 # 队列:先进先出​# l1.append(1)# l1.append(2)# l1.append(3)# print(l1)# l1.pop(0)# print(l1)# l1.pop(0)# l1.pop(0

基本的数据类型和内置方法02

萝らか妹 提交于 2019-12-03 20:21:17
元组 tuple 用途:存储多个类型的值(不能存可变类型) 定义方式:通过小括号存储数据,数据之间通过逗号分隔(值不能被改变) 定义容器类型的时候如果里面只有一个值,在值的后面加上一个逗号,在元组中,不加就是字符串 元组的类型总结:有序,不可变,存多个值 t1 = ('a','b','c','a') # t1 = tuple(('a','b','c')) print(t1) print(type(t1)) 打印结果: ('a', 'b', 'c', 'a') <class 'tuple'> 常用方法 1、索引取值 t1 = ('a','b','c','a') print(t1[0]) 打印结果: a 2、索引切片 t1 = ('a','b','c','a') print(t1[0:2]) 打印结果: ('a', 'b') 3、成员运算 t1 = ('a','b','c','a') print('a' in t1 ) print('a'not in t1 ) 打印结果: True False 4、len:获取当前元组中的元素个数 t1 = ('a','b','c','a') print(len(t1)) 打印结果: 4 5、count:统计当前元组中的某个元素的个数 t1 = ('a','b','c','a') print(t1.count('a')) 打印结果: 2 6、index

基本数据类型及内置方法(二)

扶醉桌前 提交于 2019-12-03 20:13:28
基本数据类型及内置方法(二) 一、列表的内置方法 count:统计当前列表内的指定元素的个数 s1 = ['y', 'a', 'f', 'e', 'n', 'g', '6', '6', '6'] s1.count('6') print(s1.count('6')) >>>3 index:获取当前元素的索引,可指定查找范围 s1 = ['y', 'a', 'f', 'e', 'n', 'g', '6', '6', '6'] s1.index('6') print(s1.index('6')) >>>6 s1.index("6", 7) print(s1.index("6", 7)) >>>7 sort:排序,默认reverse=False,也就是升序排序 s1 = [1, 2, 5, 6, 7, 8, 9] s1.sort() print(s1) >>>[1, 2, 5, 6, 7, 8, 9] s1 = [1, 2, 5, 6, 7, 8, 9] s1.sort(reverse=True) print(s1) >>>[9, 8, 7, 6, 5, 2, 1] sorted:python内置的排序,,在排序时生产一个新列表,原数据不变 s1 = [1, 2, 5, 6, 7, 8, 9] a = sorted(s1) print(a) >>>[1, 2, 5, 6, 7, 8, 9]