使用Python在最后一列中获取字符串

使用Python在最后一列中获取字符串,python,regex,csv,Python,Regex,Csv,我需要从CSV文件中获取一个字符串,我知道我可以使用Python,但我已经找了几个小时了,但仍然找不到它。CSV的外观如下所示: DATE|CUST|PHONE|EMAIL|NAME|CLASS|QTY|AMOUNT|ID|TRX_ID|BOOKING CODE|PIN 01-02-2013 09:04:16|sdasd|43543|csdfd|Voucher Regular|REGULAR|1|2250000|G001T001|0062013000149|32143000341|MV1011

我需要从CSV文件中获取一个字符串,我知道我可以使用Python,但我已经找了几个小时了,但仍然找不到它。CSV的外观如下所示:

DATE|CUST|PHONE|EMAIL|NAME|CLASS|QTY|AMOUNT|ID|TRX_ID|BOOKING CODE|PIN

01-02-2013 09:04:16|sdasd|43543|csdfd|Voucher Regular|REGULAR|1|2250000|G001T001|0062013000149|32143000341|MV1011302JSGUCFOM

01-02-2013 09:04:16|sdasd|43543|csdfd|Voucher Regular|REGULAR|2|1200000|G001T001|0062013000149|32143000341|MV4011302CBWDQYOU&MV4011302PVSEVAPJ

01-02-2013 11:01:13|ge|||Voucher Regular|REGULAR|1|600000|G001T001|20000027000005|32143000355|MV4011302UHKMJEEM
我想要得到的字符串是最后一个PIN列;但在每列中,可以有多个管脚,由“&”分隔


感谢您的帮助,几个小时来一直在考虑解决此问题。

在|上拆分并获取最后一个条目:

pin = line.split('|')[-1]
或者更奇特:

import csv

with open('bookings.csv', 'rb') as csvfile:
    bookings = csv.reader(csvfile, delimiter='|')
    for values in bookings:
        print(values[-1])

在|上拆分并获取最后一个条目:

pin = line.split('|')[-1]
或者更奇特:

import csv

with open('bookings.csv', 'rb') as csvfile:
    bookings = csv.reader(csvfile, delimiter='|')
    for values in bookings:
        print(values[-1])

迭代每一行,并使用如下内容:

'hello|world|and|noel'.split('|')[-1]

要获取最后一个元素,请遍历每一行并使用如下内容:

'hello|world|and|noel'.split('|')[-1]

要在处理csv文件时获取最后一个元素,只需使用:


处理csv文件时,只需使用:


为什么要这么做?unix awk会帮你做的..为什么用python呢?unix awk会帮你做的..嗨,Dominic谢谢,但是对于与“&”连接的字符串,它仍然是一行,就像这样:MV4011302CBWDQYOU&MV4011302PVSEVAPJ。我怎样才能把它们作为单独的一行呢?谢谢你可以在每一行上打电话给.split'&'。我已经更新了我的答案。嗨,多米尼克,谢谢,但是对于与“&”相连的字符串,它仍然是一行,就像这样:MV4011302CBWDQYOU&MV4011302PVSEVAPJ。我怎样才能把它们作为单独的一行呢?谢谢你可以在每一行上打电话给.split'&'。我已经更新了我的答案。