首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jython将文本文件转换为字符串列表。

jython将文本文件转换为字符串列表。
EN

Stack Overflow用户
提问于 2014-12-03 17:22:26
回答 1查看 530关注 0票数 0

我必须将文本文件转换为由逗号分隔的字符串列表(没有空白,也没有第一行)。打印之后,我需要打印每个状态的名称、每个状态包含多少行、每个状态的所有Cen2010值之和(每行中的第一个数字)、每个状态的Est2013值之和(每一行中的最后一个数字),以及每个状态从Cen2010总体到Est2013总体的总和。

文本文件示例:

姓名,Cen2010,Base2010,Est2010,Est2011,Est2012,Est2013 伊利诺斯州阿宾敦市电话:3319,3286,3286,3270,3242,3227 伊利诺斯州“阿迪维尔村”,252,252,252,250,250,247 “艾迪森村”,伊利诺斯州,36942,3696,37007,37181,37267,37385 “阿德林村”,伊利诺斯州,85,85,85,84,83

现行法典:

代码语言:javascript
复制
def readPopest():
  censusfile=pickAFile()
  cf=open(censusfile,"rt")
  cflines=cf.readlines()
  for i in range(len(cflines)-1):
    lines=cflines[i+1]
    estimate=lines.strip().split(',')
    print estimate

返回:

“阿宾敦城”、“伊利诺斯州”、“3319”、“3286”、“3286”、“3270”、“3242”、“3227”

“阿迪维尔村”、“伊利诺斯州”、“252”、“252”、“252”、“250”、“250”、“247”

“艾迪森村”、“伊利诺斯州”、“36942”、“36964”、“37007”、“37181”、“37267”、“375 385”

“阿德林村”、“伊利诺斯州”、“85”、“85”、“85”、“84”、“84”、“83”

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-12-04 10:25:43

我认为您可以将这些数据导入SQL数据库,然后就可以很容易地进行求和、筛选等操作。

但在Python里我们有字典。您可以读取数据并填写字典,其中键名是状态的名称。然后,对于每一行,将城镇添加到这个州的城镇列表中,并将数字添加到已经保存的数字中。当然,对于第一个城镇,您必须创建两个数组的结构。一个代表城镇,一个代表数字。在代码中,如下所示:

代码语言:javascript
复制
def add_items(main_dict, state, town, numbers):
    try:
        towns_arr, numbers_arr = main_dict[state]
        towns_arr.append(town)
        for i in range(len(numbers)):
            numbers_arr[i] += numbers[i]
    except KeyError:
        town_arr = [town, ]
        main_dict[state] = [town_arr, numbers]

现在,您必须在读取文件的主代码中使用它:

代码语言:javascript
复制
    state_dict = {}
    cf = open(censusfile, "rt")
    lines = cf.readlines()
    for line in lines[1:]:  # we skip 1st line
        arr = line.strip().split(',')
        town = arr[0]
        state = arr[1]
        numbers = [int(x) for x in arr[2:]]
        add_items(state_dict, state, town, numbers)
    print(state_dict)

作为家庭作业,试着以所需的格式打印这本词典。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27277844

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档