簡體   English   中英

Odoo 10 Python數組列表調用元素

[英]Odoo 10 python array list call element

@api.depends('employee_id')
    def create_employee_report(self):
        count = 0
        employee_array = []
        employee_data = {}
        for employee in self.env['hr.employee'].search([]):
            if employee.socialsecurityno:
                count = count + 1
                employee_data ={'count':str(count),'sicil_no':employee.socialsecurityno}
                employee_array.append(employee_data)
                print employee_array
                print employee_array[0][count]

我該如何稱呼該元素?

 employee_array[0].count

要么

 employee_array[0[count]] 

我嘗試了所有組合,但無法正常工作。 謝謝。

您應該使用'print employee_array [0] [“ count”]',因為“ count”是字典的鍵。 如果您不使用引號,則python會假定它是一個變量。 我假設您始終希望按照代碼從數組中打印第0個元素。

for循環中發生的事情的示例片段:

>>> employee_array = []
>>> employee_data ={'count':"1",'sicil_no':"9704"}
>>> employee_array.append(employee_data)
>>> print employee_array
[{'count': '1', 'sicil_no': '9704'}]
>>> print employee_array[0]["count"]
1
>>> employee_data ={'count':"2",'sicil_no':"9705"}
>>> employee_array.append(employee_data)
>>> print employee_array
[{'count': '1', 'sicil_no': '9704'}, {'count': '2', 'sicil_no': '9705'}]
>>> print employee_array[0]["count"]
1

或者您正在尋找:

>>> print employee_array[count]

並不是:

>>> print employee_array[0]["count"]

您可以使用print employee_array [count] [“ count”]:exemple

 for employee in self.env['hr.employee'].search([]):
            if employee.socialsecurityno:
                count = count + 1
                employee_data = {'count':str(count),'sicil_no':employee.socialsecurityno}
                employee_array.append(employee_data)
                print employee_array

               print employee_array[count]["count"]

打印employee_array中的每個項目

暫無
暫無

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

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