簡體   English   中英

AttributeError:模塊“ app.parse”沒有屬性“ sheet”

[英]AttributeError: module 'app.parse' has no attribute 'sheet'

我收到一個錯誤: AttributeError: module 'app.parse' has no attribute 'sheet4' 我在parse.py中寫道

class DataRate():
    data_rate ={}
    data_rate =defaultdict(dict)
    def try_to_int(arg):
        try:
            return int(arg)
        except:
            return arg

    book4 = xlrd.open_workbook('./data/excel1.xlsx')
    sheet4 = book4.sheet_by_index(0)

data_rate_savedata.py中

from . import parse
def data_rate_save():
   for row_index in range(0, sheet4.nrows):
        row = sheet4.row_values(row_index)
        row = list(map(try_to_int, row))
        value = dict(zip(tag_list, row))

        closing_rate_dict[value['ID']].update(value)
        user = User.objects.filter(corporation_id=closing_rate_dict[value['ID']]['NAME'])

main_save.py中

from app.parse import DataRate

#parse
DataRate()
#save
data_rate_save()

當我運行main_save.py時,發生錯誤。 我真的不明白為什么會發生此錯誤,因為我在data_rate_savedata.py中導入了parse.py,因此可以在data_rate_savedata.py中訪問“ sheet4”的parse.py。 我應該在main_save.py中寫些東西嗎? 如何解決此錯誤? models.py中

class User(models.Model):
    trunsaction_id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
    regist_date = models.DateTimeField(auto_now=True)
    user_id = models.CharField(max_length=200,null=True)
    name = models.CharField(max_length=200,null=True)
    age = models.CharField(max_length=200,null=True)

完整回溯為

Traceback (most recent call last):
  File "<console>", line 1, in <module>
  File "/Users/app/data_rate_savedata.py", line 11, in <module>
    data_rate_save()
  File "/Users/app/data_rate_savedata.py", line 19, in data_rate_save
    for row_index in range(0, sheet4.nrows):
AttributeError: module 'app.parse' has no attribute 'sheet4'

在您的data_rate_savedata.py ,嘗試:

from .parse import DataRate

# and use
# DataRate.sheet4

我猜sheet4sheet4的屬性,而不是解析。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM