2017-11-18 180 views
-1

我想制作一个程序,其中.txt文件的行会得到一个随机顺序。以随机顺序放置txt文件的行。

这是我的代码至今:

diction = {} 
def selecteer_random_elftal(): 
    lijnen = open("bronmateriaal\\Spelers.txt").readlines() 
    key = 0 
    while lijnen != "": 
     diction[key] = lijnen 
     key =+ 1 
    print("{0}: {1}".format(diction[key],diction[lijnen])) 
selecteer_random_elftal() 

当我这样做,我没有得到任何结果,但我不明白为什么?

感谢您提前的帮助,非常感谢!

+1

'而lijnen = “”:!' - 因为你不改变'内循环linjen',这将不仅不会启动或永远不会结束。鉴于'readlines'不会返回一个字符串,我会说后者。 – jonrsharpe

回答

0

如何使用random.shuffle()并将它传递给所有行的列表?

例如:

import random 

with open('input.txt') as f_input: 
    lines = f_input.read().splitlines() 
    random.shuffle(lines) 
    print '\n'.join(lines) 
0

因为lijnen永远不为空,如果你的文件不是空的。

因此这种情况下while lijnen != "":将总是等同于

while True: 

因此,你的程序将永远不会到来while循环了。所以,没有结果!

如果让程序继续运行,很可能是您的系统耗尽了资源(或某物)。