如何获取列表中的csv所有数字

时间:2019-04-02 16:35:21

标签: python python-3.x csv

我在玩Python csv是为了娱乐,而不是使用pandas库。我尝试拆分一列以获取数字,该列包含字母和数字。我成功获取了号码,但不是全部。缺少一个。

该列中只有两种类型的数据

GL Code : 8500/000
GL Code : 850/000

这是我的代码

csv_reader = csv.reader(csv_file)
list_1 = list(csv_reader)

for line in list_1:

    coa_name = line[0]
    split_coa_code = coa_name.split('GL Code : ')

    print (split_coa_code)

结果

['', '8500/000']
['books']
['books2']
['', '850/000']
['fish']

预期结果示例

8500/000
850/000
8600/000

3 个答案:

答案 0 :(得分:0)

尝试

    csv_reader = csv.reader(csv_file)
    list_1 = list(csv_reader)

    for line in list_1:

        split_coa_code = line.split(':')[1]

        print (split_coa_code)

答案 1 :(得分:0)

这部充满灵魂的作品

for line in list_1:
    if 'GL Code :' in line:
        print(line.replace('GL Code : ', ''))

答案 2 :(得分:0)

这应该可以解决您的问题。

csv_reader = csv.reader(csv_file)
list_1 = list(csv_reader)

for line in list_1:

    coa_name = line[0]

    if not coa_name:
        # if empty string at that line
        continue

    split_coa_code = coa_name.split(': ')[-1]

    print(split_coa_code)

coa_name.split(': ')[-1],它将根据您的示例输入返回["GL Code : ", "8500/000"]["GL Code : ", "850/000"]

我在": "进行拆分,这样您将返回一个包含2个项目的列表。列表中的第二项是您要寻找的。因此,我使用负索引,即[-1]来获取最后一个元素。

注意-字符串类型

如果您有任何疑问,请告诉我。