码迷,mamicode.com
首页 > 编程语言 > 详细

python 操作txt 生成新的文本数据

时间:2020-05-31 16:12:47      阅读:104      评论:0      收藏:0      [点我收藏+]

标签:inf   pen   字段   for   pytho   ack   with open   isa   class   

name: Jack   ;    salary:  12000
 name :Mike ; salary:  12300
name: Luk ;   salary:  10030
  name :Tim ;  salary:   9000
name: John ;    salary:  12000
name: Lisa ;    salary:   11000

 将数据file1,转化成file2并且有扣税和实际收入字段的数据

实现第一种:读写都是操作txt文本

inFileName = file.txt
outFileName = file2.txt

with open(inFileName) as ifile, open(outFileName, w) as ofile:
    # beforeTax = ifile.read().splitlines()
    # or we could use
    beforeTax = ifile.read().split(\n)
    for one in beforeTax:
        # print(open)
        if one.count(;) != 1:  # ensure valid
            continue
        namePart, salaryPart = one.split(;)
        if namePart.count(:) != 1:  # ensure valid
            continue
        if salaryPart.count(:) != 1:  # ensure valid
            continue

        name = namePart.split(:)[1].strip()
        # salary = int(salaryPart.split(‘:‘).strip())  #lies对象没有strip属性,所以得取索引
        salary = int(salaryPart.split(:)[1].strip())
        # print(salaryPart)

        income = int(salary * 0.9)
        tax = int(salary * 0.1)

        outPutStr = name: {}   ;    salary:  {} ;  tax: {} ; income:  {}.format(name, salary, tax, income)

        print(outPutStr)
        
        ofile.write(outPutStr + \n)

 

name: Jack   ;    salary:  12000 ;  tax: 1200 ; income:  10800
name: Mike   ;    salary:  12300 ;  tax: 1230 ; income:  11070
name: Luk   ;    salary:  10030 ;  tax: 1003 ; income:  9027
name: Tim   ;    salary:  9000 ;  tax: 900 ; income:  8100
name: John   ;    salary:  12000 ;  tax: 1200 ; income:  10800
name: Lisa   ;    salary:  11000 ;  tax: 1100 ; income:  9900

 

python 操作txt 生成新的文本数据

标签:inf   pen   字段   for   pytho   ack   with open   isa   class   

原文地址:https://www.cnblogs.com/chevron123/p/13018988.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!