Python没有打印足够的列

2024-03-28 16:44:44 发布

您现在位置:Python中文网/ 问答频道 /正文

我有3列需要打印的数据,股票、EMP和扇区。这行代码就是问题所在,它只给出了第一列。我尝试将第[0]行更改为第[0,1,2]行,但没有成功。如何获取所有3列?我还将其更改为第[2]行,然后它只给出扇区的最后一列

谢谢

ws1.cell(row=index+1, column=1).value = row[0]

代码

tickers = driver.find_elements_by_css_selector('a.tv-screener__symbol') 
emps = driver.find_elements_by_xpath('//tbody/tr/td[10]')
sectors = driver.find_elements_by_xpath('//tbody/tr/td[11]')

wb = load_workbook(filename='C:\\Users\\Jake\\Wonder.xlsm',
read_only=False,keep_vba=True)
ws1 = wb.active

for index in range(len(tickers)):
   row = [tickers[index].text, emps[index].text, sectors[index].text]
   ws1.cell(row=index+1, column=1).value = row[0]

Tags: 代码textindexbyvaluedrivercellcolumn
1条回答
网友
1楼 · 发布于 2024-03-28 16:44:44

您只能为第1列指定值。将所需的值指定给第2列和第3列

ws1.cell(row=index+1, column=1).value = row[0]
ws1.cell(row=index+1, column=2).value = row[1]
ws1.cell(row=index+1, column=3).value = row[2]

或者更直接地,去掉row = [...],直接分配它们

ws1.cell(row=index+1, column=1).value = tickers[index].text
ws1.cell(row=index+1, column=2).value = emps[index].text
ws1.cell(row=index+1, column=3).value = sectors[index].text

相关问题 更多 >