如何在python中搜索文本文件中的某个东西?

2024-10-02 22:27:39 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个文本文件:

E5341,21/09/2015,C102,440,E,0
E5342,21/09/2015,C103,290,A,290
E5343,21/09/2015,C104,730,N,0
E5344,22/09/2015,C105,180,A,180
E5345,22/09/2015,C106,815,A,400
E5346,23/09/2015,C107,970,N,0
E5347,23/09/2015,C108,1050,E,0
E5348,23/09/2015,C109,370,A,200
E5349,25/09/2015,C110,480,A,250
E5350,25/09/2015,C111,330,A,330
E5351,25/09/2015,C112,1750,E,0
E5352,28/09/2015,C113,1500,N,0
E5353,28/09/2015,C114,272,A,200
E5354,29/09/2015,C115,560,E,0
E5355,29/09/2015,C116,530,A,450
E5356,29/09/2015,C117,860,E,0
E5357,29/09/2015,C118,650,E,0
E5358,29/09/2015,C119,380,A,380
E5359,29/09/2015,C120,980,N,0
E5360,30/09/2015,C121,1375,E,0
E5361,01/10/2015,C122,374,A,374

E代表估计数

估计数后面的日期是估计日期

C代表客户编号

客户编号后的数字是以英镑计算的最终总数

最后总数后的字母告诉你该工作是被接受(A)还是不被接受(N),或者该工作只是一个估计(E)

状态^后的数字是已缴的总金额

我想知道,如果我在python中输入一个估算数字,如何打印出日期或计算出未支付的款项,并找出工作的状态。你知道吗

我试图研究这个,但我不明白,我真的很感谢任何帮助这一点。你知道吗

如果我输入5353的估计数,那么预期结果就是要显示该示例的日期,即2015年9月28日


Tags: 客户状态代表数字编号文本文件总数估计数
1条回答
网友
1楼 · 发布于 2024-10-02 22:27:39

Python2的基本思想(注意,我还没有对此进行测试,但应该很接近或按原样工作):

search = '5356' # supply this as your search
search = 'E'+search
fh = open('textfile.txt')
for line in fh:
    elements = line.split(',')
    if len(elements) == 6:
        if elements[0] == search:
            print 'For Estimate #'+search
            print 'date:'+elements[1]
            print 'cust:'+elements[2]
            print 'totl:'+elements[3]
            print 'stat:'+elements[4]
            print 'paid:'+elements[5]
fh.close()

现在。。。在python2文档中查找该示例中的每个语句,并查看其中的各个项的作用。如果你还想继续学这门语言的话,那会给你一个学习这门语言的开始。你知道吗

请记住,失败是可能的:例如,如果文本文件名错误,文件打开失败怎么办?您需要查看tryexceptPython语言元素。你知道吗

每个人都需要从某个地方开始,这就是为什么我没有给你一个尖刻的“展示你的作品”的答案。所以这是你的开始。去学习吧。:)

相关问题 更多 >