首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在csv中如何将连字符权转换为磅

在csv中如何将连字符权转换为磅
EN

Stack Overflow用户
提问于 2013-10-26 18:10:58
回答 2查看 114关注 0票数 0

我有一个csv,它看起来类似于以下内容:

示例数据

代码语言:javascript
运行
复制
data,data,8-10,data,data
data,data,9-06,data,data
data,data,10-00,data,data
data,data,14-10,data,data
data,data,12-10,data,data
data,data,8-11,data,data
data,data,16-10,data,data
data,data,20-10,data,data
data,data,18-10,data,data

我需要对这个重量的两个部分进行计算,才能将它转化为磅的量。

例如,对于第1行,我需要输出(8 * 14) + 10。但是,我不知道如何捕获这个权重的两边来执行上述计算。

期望的输出:

代码语言:javascript
运行
复制
data,data,8-10,data,data,122
data,data,9-06,data,data,132
data,data,10-00,data,data,140
data,data,14-10,data,data,206
data,data,12-10,data,data,178
data,data,8-11,data,data,123
data,data,16-10,data,data,234
data,data,20-10,data,data,290
data,data,18-10,data,data,262
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-10-26 18:39:25

使用csv库和列表理解,您可以获得以下数据:

代码语言:javascript
运行
复制
import csv

with open('sample.csv') as f:
   c = [r for r in csv.reader(f, delimiter=',')]
    data = [
        item[0] * 14 + item[1] for item in
            [map(int, row[2].split('-', 1)) for row in c]
    ]

    print data

输出:

代码语言:javascript
运行
复制
[122, 132, 140, 206, 178, 123, 234, 290, 262]

下面的代码,可以为您将所有数据写入新的代码:

代码语言:javascript
运行
复制
import csv

with open('sample.csv') as f:
    with open('new_file.txt', 'w') as w:
        c = [r for r in csv.reader(f, delimiter=',')]
        data = [
            item[0] * 14 + item[1] for item in
                [map(int, row[2].split('-', 1)) for row in c]
        ]
        for line, d in zip(c, data):
            for l in line:
                w.writelines(str(l) + ',')
            w.writelines(str(d))
            w.writelines('\n')
票数 4
EN

Stack Overflow用户

发布于 2013-10-26 18:13:17

csv模块为您提供字符串;只需在带有str.split()的破折号上拆分,然后映射到int()

代码语言:javascript
运行
复制
val1, val2 = map(int, row[2].split('-', 1))

现在有两个整数值要计算:

代码语言:javascript
运行
复制
>>> example = '8-10'
>>> map(int, example.split('-', 1))
[8, 10]
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19610144

复制
相关文章

相似问题

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