请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

excel中存在多个需要回写的,为什么只有最后一次回写啊,不是追加啊。

if expect_step!= None:

				print("获取的预期步骤是: ",expect_step)
				expect_result=getattr(action_method,expect_step)
				print("获取的预期元素是: ",expect_key)
				result=expect_result(expect_key,expect_module)
				print("result 的值是:  ",result)
				if result:
					print("i 的值是: ",i)
					data.get_write_value(i,"pass")
				else:
					data.get_write_value(i,"fail")
						

图片描述

def get_write_value(self,row,value):
		write_value=self.opera_excel.write_value(row,value)
		return write_value
`
def write_value(self,row,value):
		read_value=self.excel
		write_data=copy(read_value)
		write_save=write_data.get_sheet(0)
		write_save.write(row,8,value)
		print(self.file_path)
		write_data.save(self.file_path)

正在回答 回答被采纳积分+3

2回答

提问者 罪月 2019-02-28 13:17:01

def get_excel(self):

excel=xlrd.open_workbook(self.file_path,'w+b')

return excel

这个追加用什么

0 回复 有任何疑惑可以回复我~
Mushishi 2019-02-27 22:25:38

read_value=self.excel这个不能这么写。必须重新打开一个对象。不然一直用的是一个。

0 回复 有任何疑惑可以回复我~
  • 提问者 罪月 #1
    def get_excel(self):
    
    excel=xlrd.open_workbook(self.file_path,'w+b')
    
    return excel
    
    这个追加用什么
    回复 有任何疑惑可以回复我~ 2019-02-28 18:44:46
  • Mushishi 回复 提问者 罪月 #2
    def write_value(self,row,value):
    		read_value=self.excel
    		write_data=copy(read_value)
    		write_save=write_data.get_sheet(0)
    		write_save.write(row,8,value)
    		print(self.file_path)
    		write_data.save(self.file_path)
    这是这个方法里面的self.excel 这句话变更为xlwd这个方法去重新打开。而不是xlrd。仔细看课程。
    回复 有任何疑惑可以回复我~ 2019-02-28 22:32:26
  • Z_Kang #3
    老师 能不能把修改的代码发一下 xlwt只能重新生成一个excel,不能直接打开excel
    回复 有任何疑惑可以回复我~ 2019-08-29 15:30:19
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信