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

Python 3.x 如何从导入.txt文件的列表中选择随机作品?,python-3.x,random,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... 我导入了该文件,并

所以我有一个.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))

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

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

Ex:

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))

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

Ex:

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))

您不断覆盖
data1
data2
data1
是上次读取的州名、缩写、昵称和大写字母的列表
data2
是所述列表的第一个条目,即该状态的名称。@MisterMiyagi那么我应该从循环中得到
data2=data1[0]
吗?您一直在覆盖
data1
data2
data1
是上次读取的州名、缩写、昵称和大写字母的列表
data2
是所述列表的第一个条目,即该状态的名称。@MisterMiyagi那么我应该从循环中获取
data2=data1[0]
吗?这样,当循环运行时,该代码将一次从data1向data2添加一个单词?是的。尝试使用
print(data2)
查看内容,以便在循环运行时,此代码将从data1向data2一次添加一个单词?是的。尝试使用
print(data2)
查看内容