writer.book = book
时间: 2024-05-25 12:12:53 浏览: 12
这是一个 Python 代码片段,它将一个名为 `book` 的变量赋值给名为 `writer` 的对象的属性 `book`。这个片段可能是在使用某个 Python 库或框架编写程序时出现的,其中 `writer` 对象可能代表一个用于操作电子表格或类似文档的工具或库。通过将 `book` 变量赋值给 `writer.book` 属性,程序可以指定要操作的电子表格或文档对象。
相关问题
writer.book = book AttributeError: can't set attribute 'book'
引用\[1\]:AttributeError: can’t set attribute class A(B): def __init__(self,output_shape, **kwargs): self.output_shape = output_shape 。 引用\[2\]:报错代码如下: File "./ga_web/lib/meta_data.py", line 94, in instance_list_ip_port return \[x.get('ip')+':'+str(x.get('port')) for x in self.instance_list(filter)\] File "./ga_web/lib/meta_data.py", line 82, in instance_list for d in instance_list: File "/usr/local/lib/python2.7/site-packages/Django-1.8.7-py2.7.egg/django/db/models/query.py", line 1312, in __iter__ setattr(instance, column, values\[pos\]) AttributeError: can't set attribute 。 引用\[3\]:报错:AttributeError: can’t set attribute 原因:output_shape与你这个类继承的B中的某一参数重名(B也有output_shape这一参数),可以将output_shape改为outputShape。 问题: writer.book = book AttributeError: can't set attribute 'book'
回答: 这个错误是由于尝试设置一个不可设置的属性引起的。在第一个引用中,错误是由于在类A的初始化方法中尝试设置output_shape属性,但是该属性已经存在于类B中。为了解决这个问题,你可以将output_shape改为其他名称,例如outputShape。\[1\]
在第二个引用中,错误是由于在instance_list方法中尝试设置属性,但是该属性是只读的。这可能是由于在Django的模型查询中尝试修改查询结果导致的。要解决这个问题,你需要检查代码逻辑并确保不会尝试修改只读属性。\[2\]
在第三个引用中,错误是由于尝试设置一个不可设置的属性'book'引起的。要解决这个问题,你需要检查代码逻辑并确保正确设置属性。如果'book'是一个只读属性,你将无法设置它的值。\[3\]
#### 引用[.reference_title]
- *1* *3* [AttributeError: can‘t set attribute](https://blog.csdn.net/weixin_42316982/article/details/122639488)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* [解决:AttributeError: can't set attribute](https://blog.csdn.net/dqchouyang/article/details/98973758)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
File "d:\桌面\新建文件夹7\福清队列肺功能数据读取.py", line 153, in run writer.book = workbook AttributeError: can't set attribute 'book'
这个错误通常发生在使用openpyxl库时,当尝试将一个已经存在的workbook对象赋值给writer.book时,会出现这个错误。解决方法是在创建writer对象时,使用新的workbook对象,而不是将已经存在的workbook对象赋值给writer.book。例如:
```
from openpyxl import Workbook, load_workbook
from openpyxl.utils import get_column_letter
# 判断文件是否存在
if os.path.exists(self.save_path):
workbook = load_workbook(self.save_path) # 打开现有的Excel文件
else:
workbook = Workbook() # 创建一个新的workbook对象
# 获取active worksheet
worksheet = workbook.active
# 写入数据
for row in range(1, 10):
for col in range(1, 10):
cell = worksheet.cell(row=row, column=col, value=get_column_letter(col))
# 创建新的writer对象,使用新的workbook对象
from openpyxl.writer.excel import ExcelWriter
writer = ExcelWriter(self.save_path, engine='openpyxl')
writer.book = workbook
# 保存文件
writer.save()
```
在这个例子中,我们首先判断文件是否存在,如果存在则打开现有的Excel文件,否则创建一个新的workbook对象。然后,我们将新的workbook对象赋值给writer.book,最后保存文件。这样可以避免AttributeError错误的发生。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)