如何重新排列文件中的行并打印?

0 投票
1 回答
841 浏览
提问于 2025-04-17 17:24

这是我一个名为 "words.txt" 的文本文件

7 dog
3 moose
6 apple
2 dinosaur

这是我目前的进展:

file = open('words.txt','r')
for lines in file:
    number, word = lines.split()
    numbers = int(number)

简单来说,我把单词和数字分开了,并把数字转换成了整数。我不太确定这是否可行,但有没有办法把这些单词按照数字从小到大的顺序重新排列呢?我现在有点无从下手。

1 个回答

2

在编程中,有时候我们需要让程序在特定的条件下执行某些操作。比如说,当某个变量的值达到一定的标准时,我们就希望程序能做出反应。这种情况通常会用到“条件语句”。

条件语句就像是一个判断的开关,它会根据你设定的条件来决定接下来要做什么。比如,如果你有一个变量叫“分数”,你可以设定一个条件:如果分数大于60,就打印“通过”;如果分数小于60,就打印“未通过”。这样,程序就能根据分数的不同情况,给出不同的反馈。

在代码中,这种条件判断通常用“if”语句来实现。你可以把“if”想象成一个问句:如果这个条件成立,就执行某个操作。这样,程序就能根据不同的情况,灵活地做出反应。

总之,条件语句是编程中非常重要的一个部分,它帮助我们让程序更智能,能够根据不同的输入做出不同的输出。

>>> lines = [l.rstrip('\n') for l in open('words.txt')]
>>> print('\n'.join(sorted(lines, key=lambda l:int(l.split()[0]))))
2 dinosaur
3 moose
6 apple
7 dog

撰写回答