【问题标题】:Python: how to add different part of a text document to different arraysPython:如何将文本文档的不同部分添加到不同的数组中
【发布时间】:2017-03-16 09:37:32
【问题描述】:

我正在尝试创建一个收据创建器,您可以在其中“购买”产品,然后去结帐以确认您要“购买”您的物品。(这只是一个 python 程序,你不花钱)。

但是,如果我可以将所有项目的名称放入一个数组中,将 GTIN 8 编号放入另一个数组中,并将价格放入最终数组中,我觉得这对我来说会变得非常容易。

我的问题是我必须使用某种文本文档来存储带有 GTIN 8 编号和价格的商品。是否有可能做到这一点,如果可以,如何做到?

这是我将使用的文档示例:

GTIN 8 号姓名。价格。

66728009,净值,10.00

74632558,燕麦片,5.00

05103492, 钓鱼竿, 20.00

45040122,鱼饵,5.00

20415112,牛奶,2.00

37106560,鞋,25.00

51364755,T 恤,10.00

64704739,裤子,15.00

47550544,谷物,2.00

29783656,玩具,10.00

【问题讨论】:

  • 你知道如何使用CSV文件吗?
  • 是的,这是可能的,CSV 可能是要走的路。但是这个问题目前对于 SO 规则来说太宽泛了......
  • 我从来没有遇到过这样的问题,所以我之前没有使用过 CSV 文件

标签: python arrays


【解决方案1】:

我看到您的文件几乎是 CSV(您必须将标题更改为用逗号分隔,而不是点)。

因此,要读取 CSV,您可以这样做:

FILENAME = `yourfilename.csv`
items_names = []
items_GTIN_8 = []
items_prices = []

with open(FILENAME, 'r', ) as csvfile:
    reader = csv.DictReader(csvfile, delimiter=', ')
    for row in reader:
       # Here for every row, the headers of your csv will be the keys
       # of the row dict
       items_GTIN_8.append(row['GTIN 8 NO'])
       items_names.append(row['NAME'])
       items_prices.append(row['PRICE'])

运行后,您将拥有 3 个包含值的列表。 请记住更改文件的标题,因为它们将成为行字典中的键(用逗号分隔它们或您想在文件中用作分隔符)

要了解有关使用 python 读取 csv 文件的更多信息,请查看此文档: https://docs.python.org/2/library/csv.html

;)

【讨论】:

  • 谢谢,我试过了,效果和我希望的一样
  • 我很高兴能帮助@robtaxe (:
【解决方案2】:

只需阅读您的文本文档,获取权利信息,然后将名称、GTIN 和价格放入 3 个不同的数组中。也许你可以展示你的文档是什么样子的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-01-11
    • 2019-04-29
    • 1970-01-01
    • 1970-01-01
    • 2020-05-01
    • 2021-10-02
    • 2020-10-23
    相关资源
    最近更新 更多