gpt4 book ai didi

python - 通过python快速按字母顺序排列大文件

转载 作者:太空狗 更新时间:2023-10-30 00:28:52 27 4
gpt4 key购买 nike

#!/usr/bin/python

import random
import string

appendToFile = open("appendedFile", "a" )

# Generator

for i in range(1, 100000):

chars = "".join( [random.choice(string.letters) for i in xrange(15)] )
chars2 = "".join( [random.choice(string.letters) for i in xrange(15)] )

appendToFile.write(chars + ":" + chars2 + "\n")

appendToFile.close()

代码修改自 this question .

以上代码生成 100,000 行格式为 STRING:STRING 的随机文本。生成的文本文件为 3.1 MB。

如何使用 STRING:STRING 中的第一个 STRING 快速按字母顺序排列文件?大小写无关紧要。

冒泡排序很慢,不是吗?

最佳答案

第一种方法显然是简单地使用 Python 中的内置排序功能。这不是你想要的吗?如果不是,为什么?只有 100,000 行随机文本,内置排序会非常快。

lst = open("appendedFile", "rt").readlines()
lst.sort(key=str.lower)

完成。如果您真的想要,我们可以将其作为单线来完成:

lst = sorted(open("appendedFile", "rt").readlines(), key=str.lower)

编辑:我刚刚检查过,strings.letters 包括大写和小写字母。所以,上面的代码被修改为不区分大小写。

编辑:更多关于 Python 排序的信息:http://wiki.python.org/moin/HowTo/Sorting

关于python - 通过python快速按字母顺序排列大文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1870541/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com