我开始学习python,并试图为自己开展一个小项目。它只是打开一个Excel电子表格,然后查看一列,然后随机选择一个单元格进行打印。我做了一些研究,并找到了多种方法来做到这一点,但有点喜欢这个,因为它简短而甜蜜。我遇到的问题就是它打印时我想让它在一列中随机选择。所以想知道我是否有办法做到这一点。谢谢所有帮助将不胜感激!!!!
import xlrd
wb = xlrd.open_workbook("quotes.xlsx")
sh1 = wb.sheet_by_index(0)
print sh1.cell(0,0).value
答案 0 :(得分:2)
使用以下内容:
from random import choice
import xlrd
wb = xlrd.open_workbook("quotes.xlsx")
sh1 = wb.sheet_by_index(0)
column = 2 # or whatever column you want to select from
print choice(sh1.col(column)).value
Sheet.col()
方法返回一个列表,random.choice
返回列表中的随机元素。
如果要限制随机选择元素的行,可以生成随机行号,并使用它来索引列。你可以这样做:
import random
startRow = 3
endRow = 29
row = random.randint(startRow, endRow)
print sh1.cell(column, row).value