当前位置:   article > 正文

文本文件内容操作案例(假设文件data.txt中有若干整数,所有整数之间使用使用英文逗号分割,编写程序读取所有整数)_假设文件data.txt中有若干整数,所有整数之间使用英文空格分隔,编写程序读取所有整

假设文件data.txt中有若干整数,所有整数之间使用英文空格分隔,编写程序读取所有整

案例:

假设文件data.txt中有若干整数,所有整数之间使用使用英文逗号分割,编写程序读取所有整数,将其按照升序排序之后再写入文本文件data_asc.txt

data.txt

1
         2223
45
234
           98
213
124
34
        21
89
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

题目解析:

  1. 写在文件里面我们需要解析,第一步就是读取文件,使用with open读取可以不用close()关闭
  2. 把所有整数用逗号分割,我们读取出来的type是str类型,需要进行int转换,同时用逗号分割,分割函数split(),看上面的data文件有一些有空格字符,我们需要使用strip()去除两边的空格
  3. 按照升序排列,默认就是升序排序,排序用的方法是sort()
  4. 写入的时候需要将整型(int)转换为字符串(str)写入,这里一般用到映射函数map()
  5. 最后就是使用write()方法将其写入

代码:

with open("data.txt","r") as fp:
    data=fp.readlines() #读取所有行
data=[line.strip() for line in data] #删除每行两侧的空白字符
data=",".join(data) # 合并所有行
data=data.split(",")  #分割所得到的所有字符串
data=[int(item) for item in data] # 转换为数字
data.sort()
# data.sort(reverse=True) #降序排列
data=','.join(map(str,data))  #将结果转换为字符串
# type(data)
with open("data_asc.txt",'w') as fp:
    fp.write(data)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/640790
推荐阅读
相关标签
  

闽ICP备14008679号