Python 从csv文件中获取随机元素

Python 从csv文件中获取随机元素,python,csv,random,python-3.x,Python,Csv,Random,Python 3.x,我有一个包含许多单词的Csv文件。我想写一个python3代码,从这个文件中随机获得一个单词。由于从csv.reader(文件)返回的对象没有长度参数,也没有索引,所以我不知道如何随机获取单词 spamReader = csv.reader(open('A3_words.csv', 'r')) # something like: # rnd = random.randrange(reader.length) # word = reader[rnd] 我将感谢任何帮助 编辑: 每个单词都在一行中

我有一个包含许多单词的Csv文件。我想写一个python3代码,从这个文件中随机获得一个单词。由于从
csv.reader(文件)
返回的对象没有长度参数,也没有索引,所以我不知道如何随机获取单词

spamReader = csv.reader(open('A3_words.csv', 'r'))
# something like:
# rnd = random.randrange(reader.length)
# word = reader[rnd]
我将感谢任何帮助

编辑: 每个单词都在一行中,如下所示:

when  
what  
make  
time 

这段代码将根据您提供的示例生成一个随机字符串

import csv
import random

spamReader = csv.reader(open('A3_words.csv', 'r'))

data = sum([i for i in spamReader],[]) #To flatten the list
print(random.choice(data))

哦,对不起。我将编辑这个问题。感谢您的回复。由于我的csv文件很小,读取整个文件的开销不大,但是有没有办法在不读取全部内容的情况下获取一个元素?我很抱歉延迟批准和投票。你的回答很有效。谢谢。@alireza谢谢,顺便说一句,您不能阻止它读取整个csv文件。。。。不过,您的代码可以优化,但这超出了范围。。。。