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

2017-06-20  本文已影响0人  Molly6943

先看效果结果

首先,我们的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>

上一篇 下一篇

猜你喜欢

热点阅读