利用Python读写TXT文件,并对里面的数字进行排序

先看效果结果

首先,我们的TXT文件是这样的。


我们想要的结果是这样的


废话不说上代码

count = 1
all_count = 1
filename = "code.txt"
country_list = []
with open(filename, "r") as ins: //打开文件
    for line in ins: //循环文件的每一行
        all_count += 1
        line = line.replace(" ", "") //把空格和换行都去掉
        line = line.replace("\n", "")
        if '='in line and '|' in line:
            equal_symbol_idx = line.index('=') //利用index函数来标记出我们想要的字段的位置
            or_symbol_idx = line.index('|')
            count+=1
        else:
            continue

        code = int(line[equal_symbol_idx+1:or_symbol_idx]) //取出我们想要的字段
        name = line[or_symbol_idx+2:]
        country_list.append((code, name))

country_list = sorted(country_list, key=lambda x: x[0]) //对list进行排序
for countryCode in country_list: // 把list换成我们想要的dict格式
    code = 'code'
    country = 'country'
    codeObj = { code: countryCode[0], country: countryCode[1] }
    print (codeObj,',') //打印出来

终端打印出来的结果是这样的

这样就达到我们想要的效果啦~~

代码解析

由于我们只是需要文件里面的文字,并不关心它的样式,所以我们使用TXT文件。对TXT文件的读写也是最基本的文件操作。

文件的打开

文件的打开有两种种方式
1、f = open('/tmp/test.txt', 'r')
2、with open('/tmp/test.txt', 'r') as file_to_read:

其中:<ul>
<li>r 代表只读</li><li>w 代表可写 </li><li>a+ 代表读写</li>
</ul>

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,767评论 18 399
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,991评论 19 139
  • 前言 R语言作为脚本语言,有一套文件系统管理的功能函数,也可以实现如Python一样的系统管理功能。 本文将详细介...
    485b1aca799e阅读 573评论 0 6
  • Python文件I/O 本章只讲述所有基本的的I/O函数,更多函数请参考Python标准文档。 input函数 i...
    步_尘阅读 698评论 0 0
  • 面包和汤和猫咪好天气 花的懒人料理 dinner 和歌子酒 失恋巧克力职人 本棚食堂 多谢款待 杰米的私房菜 保罗...
    雨小井阅读 1,396评论 0 10