我有一个CSV文件,这是随机字只。没有标题
例如:
"dawn","go","test","these","swung"
"joy","frequently","seven","congress"
“我的代码”未选择随机单元格并返回错误:
TypeError: '_csv.reader' object is not subscriptable
我的代码是:
def random_select(self):
csv_reader = csv.reader("randomwords.csv")
words = list(csv_reader)
random_names = random.choice(words)
readcsv = csv_reader[random_names][random_names]
print(''.join(readcsv))
下面是一个修复了即时错误的重构
内部函数通常应该只是
return
一个结果;然后,调用方可以print
根据自己的意愿返回结果对于较短的输入列表,同一个单词随机抽取两次的概率非常高。你的问题甚至不清楚你是否真的想要列表中的两个随机单词,但这是我关于代码应该产生什么的最好猜测。如果你想要其他的东西,希望它现在应该是显而易见的改变
每次调用此函数时,再次将CSV文件读入内存的效率极低;可能重构代码,将列表读入内存一次,然后在需要更多单词时从列表中随机挑选出单词
CSV文件可能根本不适合这种用例。自20世纪60年代末以来,存储单词列表的标准方法至少是一个简单的文本文件,每行一个单词或短语
random_names
是从words
中选取的单个字符串。所以words
是可下标的,但除此之外没有其他内容如果您只是希望将“random\u item random\u item”生成为字符串
有效的代码:
相关问题 更多 >
编程相关推荐