加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python字典,保持整数计数

发布时间:2020-12-20 12:26:00 所属栏目:Python 来源:网络整理
导读:我试图计算一个说,整数列表.我有一个csv文件中的数字列表,我能够读入,看起来像4,245,34,99,340,… 我正在做的是尝试返回一个带有键:值对的字典,其中键是来自csv文件的整数值,值是它在列表中出现的次数.我不确定我在这里做错了什么,任何帮助都会受到赞赏 all
我试图计算一个说,整数列表.我有一个csv文件中的数字列表,我能够读入,看起来像4,245,34,99,340,…
我正在做的是尝试返回一个带有键:值对的字典,其中键是来自csv文件的整数值,值是它在列表中出现的次数.我不确定我在这里做错了什么,任何帮助都会受到赞赏

allCounts = dict()

rows = csv.reader(open('...csv'),delimiter=',')

    for intValue in rows:
        intVal = intValue[0]

        for intVal,numAppearances in allCounts:
             if intVal in allCounts:
                allCounts[numAppearances] = allCounts[numAppearances]+1
             else:
                allCounts[numAppearances] = 1

解决方法

听起来像你想要的是Counter对象:
http://docs.python.org/library/collections.html#counter-objects

另外我想你可能想要使用CSV模块:
http://docs.python.org/library/csv.html

使用内置模块应该会更容易:)

要得到像这样的行应该工作:

csvfile = open("example.csv")
dialect = csv.Sniffer().sniff(csvfile.read(1024))
csvfile.seek(0)
reader = csv.reader(csvfile,dialect)

然后你应该能够做到这一点:

c = Counter(reader)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读