小编典典

使用文本文件将单词布置成网格形式

python

我有一个来自文本文件的6个单词的列表,并且想打开该文件以将单词列表读取为3x2网格,并且每次程序运行时都能够将单词的顺序随机化。

话是:

cat, dog, hamster, frog, snail, snake

我希望它们显示为:(但每次程序运行时都会以随机顺序执行此操作)

cat    dog     hamster
frog   snail   snake

到目前为止,我所要做的就是从6个单词的列表中得到一个单词,并使用-以随机顺序出现-帮助会非常有用

import random

words_file = random.choice(open('words.txt', 'r').readlines())
print words_file

阅读 240

收藏
2021-01-20

共1个答案

小编典典

这是另一个:

>>> import random
>>> with open("words.txt") as f:
...    words = random.sample([x.strip() for x in f], 6)
... 
...
>>> grouped = [words[i:i+3] for i in range(0, len(words), 3)]
>>> for l in grouped:
...     print "".join("{:<10}".format(x) for x in l)
...     
... 
snake     cat       dog       
snail     frog      hamster

首先,我们读取文件的内容并随机选择六行(确保您的行仅包含一个单词)。然后,我们将单词分组为三元组列表,并使用字符串格式将其打印出来。将<10有10位格式括号左对齐文本和衬垫的每个项目。

2021-01-20