python的字典是一个非常方便的数据结构,使用它我们可以轻易的根据姓名(键)来找到他的成绩,排名等(值),而不用去遍历整个数据集. 例如:{'Lee': [1, 100], 'Jane': [2, 98]...} 但是在使用字典的过程中产生了一些问题,那就是,字典本身是不管你录入的顺序的 >>> d = {} >>> d['Lee'] = [1, 100]>>> d['Jane'] = [2, 98] >>> d['Tom']=[3…
在这个问题中,我们期望得到的结果是找到这三轮比赛中,每轮都进球的球员都有谁.下面用python来模拟一下,先生成一批数据: >>> from random import randint, sample >>> # sample是取样的意思,例如sample('abcde', 2),会在'abcde'这个字符串中随机抽样2个字符出来 >>> {x: randint(1,3) for x in sample('abcdef', randint(3, 6))…
假如有学生成绩以字典顺序排列:{'Tom': 87, 'Jack': 90, 'Rose': 100.....} 想要根据学生的成绩来进行排序,可以考虑使用sorted函数.但是sorted函数用在字典中,是仅对字典的键进行排序的,而不考虑值. 那么我们可以通过zip函数,将字典转化为一个元组: >>> from random import randint >>> s = {x: randint(60, 100) for x in 'abcdef'} {'a': 72,…
列表,字典,集合中根据条件筛选数据,如下所示 列表:[-10,2,2,3,-2,7,6,9] 找出所有的非负数 字典:{1:90,2:55,3:87...} 找出所有值大于60的键值对 集合:{2,3,8,6,7,5} 找出所有被3整除的数 列表 >>> from random import randint >>> data = [randint(-10,10) for x in xrange(10)] >>> data [-1, 8, -9, 9,…
现有列表如下: [6, 7, 5, 9, 4, 1, 8, 6, 2, 9] 希望统计各个元素出现的次数,可以看作一个词频统计的问题. 我们希望最终得到一个这样的结果:{6:2, 7:1...}即 {某个元素:出现的次数...} 首先要将这些元素作为字典的键,建立一个初值为空的字典: >>> from random import randint >>> l = [randint(1,10) for x in xrange(10)] >>> l [6,…
collections模块中的deque对象是一个队列,它有着正常队列的先进先出原则.我们可以利用这个对象来实现数据的保存功能. 例如,现有一个猜数字大小的游戏,系统开始会随机roll点一个0-100的整数,然后键盘开始接收你的输入,每次输入的数字系统会告诉你比这个随机数大还是小,直到你猜对了程序才会结束.如下图这样: 代码见: from collections import deque from random import randint N = randint(0, 100) history…
对于一个元组如: >>> s1 = ('Jim', 21, 'boy', '5788236@qq.com') 我们要得到该对象的名字,年龄,性别及邮箱的方法为s1[0],s1[1],s1[2],s1[3].那么如果程序中充斥了大量的这种没有意义的索引数字,则会影响代码的可读性.所以考虑几种方法来解决这个问题: >>> NAME = 0 >>> AGE = 1 >>> SEX = 2 >>> EMAIL = 3# 或者…
字典是Python中唯一的映射类型(哈希表) 字典的对象时可变的,但字典的键值必须是用不可变对象,并且一个字典中可以使用不同类型的键值 1.定义字典 dict={key1:value1,key2:value2...} 例子: >>> dict={'name':'OLIVER','age':24,'gender':'male'} >>> dict['name'] 'OLIVER' >>> dict['age'] 24 >>> dict[…
Python中字典是一些列键 (key) 值 (value) 对组成的,形式如下 {键1:值1,键2:值:2} 每个键值对用冒号隔开,每对之间用逗号隔开 键必须是唯一的,必须是不可变的,如字符串,数字,元组值可以是任何数据类型. 创建几个奇葩的字典: 创建空字典: 除了直接用大括号创建字典,还可以用dict()来创建字典 用法如下:通过放入列表套元组或者元组套列表实现 或者列表套列表.元组套列表 还可以 这种情况下,键只能为字符串类型,并且创建的时候字符串不用加引号.并且不能创建键为数值型的字典…
循环是一个结构,导致一个程序要重复一定的次数 条件循环也一样,当条件变为假,循环结束 For循环 在python for循环遍历序列,如一个列表或一个字符. for循环语法:   ——for iterating_var in sequence: statements(s) 注:如果一个序列包含一个表达式列表,他是第一个执行,然后,该序列中的第一项赋值给迭代变量 iterating_var.接下来执行语句块.列表中的每个项目分配到 iterating_var,代码块被执行,且整个序列被耗尽, 注:…