key

Merge Keys by common value from the same dictionary

心已入冬 提交于 2020-03-06 04:38:12
问题 Let's say that I have a dictionary that contains the following: myDict = {'A':[1,2], 'B': [4,5], 'C': [1,2]} I want to create a new dictionary, merged that merges keys by having similar values, so my merged would be: merged ={['A', 'C']:[1:2], 'B':[4,5]} I have tried using the method suggested in this thread, but cannot replicate what I need. Any suggestions? 回答1: What you have asked for is not possible. Your keys in the hypothetical dictionary use mutable lists. As mutable data can not be

Merge Keys by common value from the same dictionary

 ̄綄美尐妖づ 提交于 2020-03-06 04:38:06
问题 Let's say that I have a dictionary that contains the following: myDict = {'A':[1,2], 'B': [4,5], 'C': [1,2]} I want to create a new dictionary, merged that merges keys by having similar values, so my merged would be: merged ={['A', 'C']:[1:2], 'B':[4,5]} I have tried using the method suggested in this thread, but cannot replicate what I need. Any suggestions? 回答1: What you have asked for is not possible. Your keys in the hypothetical dictionary use mutable lists. As mutable data can not be

dict内置方法

风格不统一 提交于 2020-03-05 15:20:13
字典内置的方法 clear() 语法:d.clear() 参数:无 描述:无返回值。原字典被清空。 1 d1={ 2 "a":"A", 3 "b":"B", 4 "c":"C", 5 } 6 print(d1.clear())#清空 7 print(d1) 结果 1 None 2 {} copy() 语法:d.copy() 参数:无 描述:返回值是原字典的副本。 1 d2={ 2 "a":"A", 3 "b":"B", 4 "c":"C", 5 6 } 7 print(d2.copy()) 结果 1 {'a': 'A', 'b': 'B', 'c': 'C'} @staticmethod意思是静态方法,直接类名.方法名就可以用 fromkeys() 语法:dict.fromkeys(seq[,value]) 参数:seq-----新字典的键 value-----新字典所有键对应的值,默认为None 描述:返回一个新字典 1 t1=("baidu","biying") 2 t2=("www.baidu.com","www.biying.com") 3 d1=dict.fromkeys(t1) 4 print(d1) 5 d2=dict.fromkeys(t1,t2) 6 print(d2) 结果 1 {'baidu': None, 'biying': None} 2 {'baidu'

fre 代码优化

喜你入骨 提交于 2020-03-05 15:02:50
https://github.com/yisar/fre 一个比较小的框架, 想看看实现原理, 结果看到这样的代码..... const hashfy = c => { const out = {} c.pop ? c.forEach((v, i) => v.pop ? v.forEach((vi, j) => (out[hs(i, j, vi.key)] = vi)) : (out[hs(i, null, v.key)] = v) ) : (out[hs(0, null, c.key)] = c) return out } const hs = (i, j, k) => k != null && j != null ? '.' + i + '.' + k : j != null ? '.' + i + '.' + j : k != null ? '.' + k : '.' + i 代码主要作用是将dom结构转化为一个k-v形式的对象, 用于做diff 每个节点的key是路径的节点的 key或者index 但是这个代码只支持最多二维数组, 如果三维的话会报错 <div> {Array(3).fill().map((x, i) => Array(3).fill().map((y, j) => Array(3).fill().map((z, k) => ( <div> {i},{j},

自建 ca 及使用 ca 颁发证书

丶灬走出姿态 提交于 2020-03-05 11:19:32
创建CA: 一、安装openssl [root@localhost ~]# yum install -y openssl 二、创建CA的相关文件及目录 mkdir /opt/root_ca &&\   cd root_ca &&\   mkdir newcerts private crl &&\   touch index.txt &&\   touch serial &&\   echo 01 >serial &&\ 说明:    #newcerts目录用于存放CA签署(颁发)过的数字证书(证书备份目录)。   #private目录用于存放CA的私钥。   #文件serial和index.txt分别用于存放下一个证书的序列号和证书信息数据库。   #文件serial填写第一个证书序列号(如10000001),之后每前一张证书,序列号自动加1。 三、修改openssl配置文件 vim /etc/pki/tls/openssl.cnf [ CA_default ] dir = /opt/root_ca [ policy_match ] countryName = match stateOrProvinceName = optional organizationName = optional organizationalUnitName = optional commonName =

redis sorted_set类型

﹥>﹥吖頭↗ 提交于 2020-03-04 18:04:09
有序集合类型 sortedset:   存储需求:数据排序有利于数据的有效展示,需要提供一种可以根据自身特征进行排序的方式   需要的存储结构:新的存储模型,可以保存可排序的数据   sorted_set类型:在set的存储结构基础上添加可排序字段,每个元素都会关联一个double类型的分数字段。     redis正是通过分数字段来为集合中的成员进行从小到大的排序。   1. 存储:zadd key score1 member1 [score2 member2]       zadd mysort 60 zhangsan       zadd mysort 50 lisi       zadd mysort 80 wangwu   2. 获取:zrange key start stop [WITHSCORES]    zrevrange key start stop [WITHSCORES] 反向排序分数       zrange mysort 0 -1       zrange mysort 0 -1 withscores   3. 删除:zrem key member [member ...]       zrem mysort lisi   4.按条件获取数据:     zrangebyscore key min max [WITHSCORES] [LIMIT offset

黑马程序员数据加密学习

孤街浪徒 提交于 2020-03-04 12:14:32
---------------------- Windows Phone 7手机开发 、 .Net培训 、期待与您交流! ---------------------- 对称加密算法: 对称加密(也叫私钥加密)指加密和解密使用相同密钥的加密算法。有时又叫传统密码算法,就是加密密钥能够从解密密钥中推算出来,同时解密密钥也可以从加密密钥中推算出来。而在大多数的对称算法中,加密密钥和解密密钥是相同的,所以也称这种加密算法为秘密密钥算法或单密钥算法。它要求发送方和接收方在安全通信之前,商定一个密钥。对称算法的安全性依赖于密钥,泄漏密钥就意味着任何人都可以对他们发送或接收的消息解密,所以密钥的保密性对通信性至关重要。 对称加密算法的优点在于加解密的高速度和使用长密钥时的难破解性。不足之处是,交易双方都使用同样钥匙,安全性得不到保证。 非对称加密算法: 非对称加密算法需要两个密钥:公开密钥(publickey)和私有密钥(privatekey)。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。 非对称密码体制的特点: 算法强度复杂、安全性依赖于算法与密钥但是由于其算法复杂,而使得加密解密速度没有对称加密解密的速度快

java中遍历Map的方法

女生的网名这么多〃 提交于 2020-03-04 11:18:43
//第一种:普遍使用,二次取值 System.out.println("通过Map.keySet遍历key和value:"); for (String key : map.keySet()) { System.out.println("key= "+ key + " and value= " + map.get(key)); } //第二种 System.out.println("通过Map.entrySet使用iterator遍历key和value:"); Iterator<Map.Entry<String, String>> it = map.entrySet().iterator(); while (it.hasNext()) { Map.Entry<String, String> entry = it.next(); System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue()); } //第三种:推荐,尤其是容量大时 System.out.println("通过Map.entrySet遍历key和value"); for (Map.Entry<String, String> entry : map.entrySet()) { System.out.println("key=

遍历map几种方式及应用

谁说我不能喝 提交于 2020-03-04 11:18:22
Map<String, String> map = new HashMap<String, String>(); map.put("1", "value1"); map.put("2", "value2"); map.put("3", "value3"); //第一种:普遍使用,二次取值 System.out.println("通过Map.keySet遍历key和value:"); for (String key : map.keySet()) { System.out.println("key= "+ key + " and value= " + map.get(key)); } //第二种 System.out.println("通过Map.entrySet使用iterator遍历key和value:"); Iterator<Map.Entry<String, String>> it = map.entrySet().iterator(); while (it.hasNext()) { Map.Entry<String, String> entry = it.next(); System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue()); } //第三种:推荐,尤其是容量大时

redis

两盒软妹~` 提交于 2020-03-04 07:28:23
1、数据类型 string,hash,list,set,zset (String) 最基本的命令:GET、SET GET key,SET key value (hash) 设置单个:HSET HSET key field value,不存在时返回1,存在时返回0 设置多个:HMSET HMSET key field value [field value ...] 读取单个:HGET HGET key field,不存在是返回nil 读取多个:HMGET HMGET key field [field ...] 读取全部:HGETALL HGETALL key (list) 添加左边元素:LPUSH LPUSH key value [value ...] 添加右边元素:RPUSH RPUSH key value [value ...] (set) 添加元素:SADD SADD key member [member ...] 删除元素:SREM SREM key member [member ...] 获取全部元素:SMEMBERS SMEMBERS key ,返回集合全部元素 (zset) 添加集合元素:ZADD ZADD key [NX|XX] [CH] [INCR] score member [score member ...] 获取元素分数:ZSCORE ZSCORE key