2 u011185812 u011185812 于 2016.03.25 14:06 提问

python的字典数组问题。

对于一个已经存有一定数据的字典数组,比如:
dict = {'a':10, 'b':12, 'c':3, 'd':4}
假设我现在又有了个新数据b:5
请问如何可以将原来的字典中的b的值变成两个相减的结果(12-5=7)?

for a,b in result.items():
if line[7] == a:
b = b-line[4]
我写的这段代码好像没起作用

4个回答

oyljerry
oyljerry   Ds   Rxr 2016.03.25 14:24
 for a,b in result.items():
    if line[7] == a:
        result[a] = b-line[4]
u011185812
u011185812 好像还是不对。不知道是不是我的逻辑问题,我把这段代码发全你能帮我看下么?
2 年多之前 回复
u011185812
u011185812   2016.03.25 15:10

import csv,sys

reader= csv.reader(file("F:\testwiki2.csv",'rb'))

result = {}

for line in reader:
if reader.line_num == 1:
continue
if line[4] == "added":

result[line[6]] = line[5]

for line in reader:
if reader.line_num == 1:
continue
if line[4] == "deleted":
for a,b in result.items():
if line[7] == a:
result[a] = b-line[4]

for c,d in result.items():
print c+" "+d

这是完整代码,然后这个csv文件是这样的:![图片说明](https://img-ask.csdn.net/upload/201603/25/1458889731_393006.png)
我要做的是 如果操作为deleted的话,就将它的被操作者的对应值减去这个deleted的数值。。
u011185812
u011185812   2016.03.25 15:14

import csv,sys
reader= csv.reader(file("F:\testwiki2.csv",'rb'))

result = {}

for line in reader:
if reader.line_num == 1:
continue
if line[4] == "added":
result[line[6]] = line[5]

for line in reader:
if reader.line_num == 1:
continue
if line[4] == "deleted":
for a,b in result.items():
if line[7] == a:
result[a] = b-line[4]

for c,d in result.items():
print c+" "+d

CSDNXIAOD
CSDNXIAOD   2016.03.30 11:24

Python 字典中的中文输出问题
Python笔记:一个二维数组引发的问题
python字典数组排序实现
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
Python 数组[],元组(),字典{}的异同
序列 Python有6中内建的序列,在这里我们重点讨论两种,数组和元组。所有序列都可以做某些特定的操作,大致上常用的是:加,乘,索引,分片以及检查某个元素是否属于序列的成员。 Python还提供一些内建函数来计算序列长度,找出最大值与最小值。 注意:所有的序列都是从0开始递增。 索引 序列中的元素都是有编号的,且编号是从0开始,从左往右数,最后一个为length-1. 从右往左数,
python编程中字典插入数组的误区
最近在写一个python代码的时候遇到了一个问题,将一个字典类型的变量插入数组中时,当该字典变量的某个key对应的value发生变化时,数组的内容同时也会发生变化。这里来验证一下。 首先,进入python工作环境 root@ubuntu-50:~# python Python 2.6.5 (r265:79063, Feb 27 2014, 19:43:51) [GCC 4.4.3] on l
python列表 数组 字典
创建列表 sample_list = ['a',1,('a','b')] Python 列表操作 sample_list = ['a','b',0,1,3] 得到列表中的某一个值 value_start = sample_list[0] end_value = sample_list[-1] 删除列表的第一个值 del sample_list[0]
python之遍历数组、字典
1、常用方法 lst=range(5) #[0,1,2,3,4] for item in lst: print item #0 #1 #2 #3 #4 2、常用方法不能取到item的下标,使用如下方法取下标 lst=range(5) # [0,1,2,3,4]for i in range(len(lst)): print lst[i] # 0 # 1 # 2 #
python3 web接口 字典里边嵌字典和数组字典的封装
if eid != '':         #字典里边嵌入字典         event = {}         try:             result = Event.objects.get(id =eid)         except ObjectDoesNotExist:             return JsonResponse({'status':10022
PYTHON 对列表|字典|列表中多个字典排序
列表排序 字典排序 列表中多个字典排序 >>>t = [{'a':1,'b':2},{'b':3,'a':5}] >>>t.sort(key=operator.itemgetter(’b‘),reverse=True)  #默认为升序, reverse=True为降序 >>>print t
python-数组,序列,字典,列表,序表,元祖(tuple)
python 没有数组的数据结构#list 序列sample_list = [1,2,3,abc]#dictionary 字典sample_dic = {"key":value, 2:3}#tuple 只读的序列sample_tuple = (1,3,"ab")序表    序表由一系列值用逗号分隔而成    序表与字符串一样是
python3 字典、列表、数组和字符串之间的相互转化
字典 # -*- coding: UTF-8 -*- dict_1 = {'1': 'a', '2': 'b', '3': 'c'} print(dict_1) # 打印字典 print(type(dict_1)) # 打印新赋值的字典的类型 print(str(dict_1), end='字符串\n') # 把字典转化成字符串后打印 print(tuple(dict_1),...
python字典数组排序实现
python对容器内数据的排序有两种,一种是容器自己的sort函数,一种是内建的sorted函数。 sort函数和sorted函数唯一的不同是,sort是在容器内排序,sorted生成一个新的排好序的容器 eg数组排序:  L=[5,2,3,1,4]. sort: L.sort() sorted(...)     sorted(iterable, cmp=None, key=None,
python对数组或字典变量排序
    数据处理中需要对数组按行或按列进行排序,或者对字典变量中的键值对排序。主要用到的两个函数为np.lexsort()和内置函数sorted()。如下说明处理过程。对数组按最后一行排序,且保持列的相对位置不变>>> import numpy as np >>> data=np.array([[ 2,  7,  1,  2],[35,  9,  1,  2],...