如何从导入.txt文件制成的列表中选择随机作品?

时间:2019-07-16 10:51:26

标签: python-3.x random

所以我有一个.txt文件,其中每行包含美国各州的名称,缩写,昵称和大写字母。

我需要在不同的行上打印5个随机状态的名称,一个在另一行下方。 文本文件看起来像-

Alabama,AL,Cotton State,Montgomery
Alaska,AK,The Last Frontier,Juneau
Arizona,AR,Grand Canyon State,Phoenix
Arkansas,AK,Land of Opportunity,Little Rock
and so on...

我导入了文件,并通过逗号分割将其放入列表中。我有所有名字的清单。但是当我运行random.choice(data2)而不是得到一个随机单词时,我得到了一个随机字母。这意味着列表是由每个字母作为元素而不是每个单词作为元素组成的。

我的代码-

import random
inflie=open("F:\\SKKU\\study\\ISS3178 - Python\\11\\StatesANC.txt","r")
for line in inflie:
    data1=line.split(",")
    data2=data1[0]
print(random.choice(data2))

我希望得到一个随机的州名,但是我得到的是来自州名之一的随机字母。

1 个答案:

答案 0 :(得分:0)

您需要将结果附加到列表中,然后使用random

例如:

import random
data2 = []
inflie=open("F:\\SKKU\\study\\ISS3178 - Python\\11\\StatesANC.txt","r")
for line in inflie:
    data1=line.split(",")
    data2.append(data1[0])   #Append state

print(random.choice(data2))