鱼C论坛

 找回密码
 立即注册
查看: 901|回复: 3

一个关于调用OS的类

[复制链接]
发表于 2018-12-6 11:32:18 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
我想写一个关于处理Excel的class,在类中定义了os.chdir,代码如下:

  1. >>> class ExcelWork:
  2.                
  3.                 def __init__(self, work_Dir, file_Name, sheet_name, row_Number, column_Number):
  4.                
  5.                                 self.workdir=os.chdir(work_Dir)
  6.                                 self.old_Workbook=openpyxl.load_workbook(file_Name)
  7.                                 self.old_Worksheet=old_Workbook[sheet_name]
  8.                                 self.old_Cell=old_Worksheet.cell(row=row_Number, column=column_Number)
  9.                                 return self.old_cell.value

  10.                         
  11. >>> workdir=r'c:\isBIM Work\07MyPython\test'
  12. >>>
  13. >>> file='code1.xlsx'
  14. >>> sheet='part1'
  15. >>>
  16. >>> read=ExcelWork(workdir,file,sheet,2,3)

复制代码


那么问题来了:

Traceback (most recent call last):
  File "<pyshell#68>", line 1, in <module>
    read=ExcelWork(workdir,file,sheet,2,3)
  File "<pyshell#62>", line 7, in __init__
    self.old_Worksheet=old_Workbook[sheet_name]
NameError: name 'old_Workbook' is not defined
各位大神,我哪儿错了啊?
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2018-12-6 11:40:38 | 显示全部楼层
少了个self.
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-12-6 12:05:47 | 显示全部楼层
NameError: name 'XXX' is not defined  说明你上面的句子里没有定义过XXX这个对象
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-12-6 13:45:18 | 显示全部楼层
记住self.old_Workbook和old_Workbook不一样哦,可以理解成一个是全局变量,一个是局部变量。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-1-11 21:41

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表