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

发布于 2021-01-29 15:03:50

我有一个来自文本文件的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
关注者
0
被浏览
68
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    这是另一个:

    >>> 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位格式括号左对齐文本和衬垫的每个项目。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看