python中为什么用不了if_Python变量在If语句中不起作用
我使用selenium从一个txt文件中循环访问URL,并获取每个URL上列出的特定序列号。然后我想引用一个excel文件,找到序列号旁边的单元格并打印该值。在我的问题是,当我在变量中存储序列号时,它在if语句中不起作用。如果我用一个实际的序列号替换变量,它会按预期运行。为什么我的代码中存储的变量不起作用?在以下是我想要的代码,在这里我没有收到任何输出:with open('Url.txt') a
我使用selenium从一个txt文件中循环访问URL,并获取每个URL上列出的特定序列号。然后我想引用一个excel文件,找到序列号旁边的单元格并打印该值。在
我的问题是,当我在变量中存储序列号时,它在if语句中不起作用。如果我用一个实际的序列号替换变量,它会按预期运行。为什么我的代码中存储的变量不起作用?在
以下是我想要的代码,在这里我没有收到任何输出:with open('Url.txt') as links:
for line in links:
time.sleep(3)
driver.get(line)
editpage = driver.find_elements_by_link_text('Edit this device')
for page in editpage:
time.sleep(1)
editurl = page.get_attribute('href')
driver.get(editurl)
Devicesn = driver.find_elements_by_id('device.name')
for sn in Devicesn:
serialnumber = sn.get_property('value')
wb = xlrd.open_workbook('C:\doc.xls')
for sheet in wb.sheets():
for row_num in range(sheet.nrows):
row_value = sheet.row_values(row_num)
if row_value[1] == serialnumber:
print(row_value[0])
如果我用一个数字替换serialnumber,我会得到我要查找的单元格值:
^{pr2}$
这给了我我想要的价值。为什么serialnumber变量在这里不起作用?谢谢!在
编辑:感谢大家的回复。为了使这更有意义,我打印了serialnumber变量和它的长度。在serialnumber = sn.get_property('value')
wb = xlrd.open_workbook('C:\doc.xls')
for sheet in wb.sheets():
for row_num in range(sheet.nrows):
row_value = sheet.row_values(row_num)
print(serialnumber)
print(len(serialnumber))
time.sleep(60)
if row_value[1] == serialnumber:
print(row_value[0])
输出为:6216295237
10个
与#serialnumber = sn.get_property('value')
wb = xlrd.open_workbook('C:\doc.xls')
for sheet in wb.sheets():
for row_num in range(sheet.nrows):
row_value = sheet.row_values(row_num)
if row_value[1] == 6216295237:
print(row_value[0])
输出为:G47

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。
更多推荐
所有评论(0)