在元组中访问Python对象
我正在使用easyzone和dnspython从区域文件中提取DNS记录。在提取记录时,我会得到一个字符串和一个元组中的对象。我对来自PHP的Python不太熟悉,不太确定如何获取这个对象以获得它的值?我在获取元组中的字符串值时没有问题 在这个代码片段中,我遍历了A记录并将值写入CSV:在元组中访问Python对象,python,python-2.7,Python,Python 2.7,我正在使用easyzone和dnspython从区域文件中提取DNS记录。在提取记录时,我会得到一个字符串和一个元组中的对象。我对来自PHP的Python不太熟悉,不太确定如何获取这个对象以获得它的值?我在获取元组中的字符串值时没有问题 在这个代码片段中,我遍历了A记录并将值写入CSV: # Write all A records for a in z.names.items(): c.writerow([domain, 'A', a.__getitem__(0)
# Write all A records
for a in z.names.items():
c.writerow([domain, 'A', a.__getitem__(0), a])
a包含以下内容:
('www.121dentalcare.com.', <easyzone.easyzone.Name object at 0x1012dd190>)
(“www.121dentalcare.com.”)
如何访问位于该元组后半部分的中的对象???您可以使用索引从元组中获取项:
sometuple[1]
正如您可以处理列表和字符串一样(请参阅)
虽然有点薄,但从外观上看,easyzone.easyzone.Name
对象具有.Name
、.soa
和.ttl
属性:
print sometuple[1].name
.soa
属性是另一个自定义类,具有.mname
,.rname
,.serial
,.refresh
,。retry
,。expire
和.minttl
属性。您可以使用索引从元组中获取项:
sometuple[1]
正如您可以处理列表和字符串一样(请参阅)
虽然有点薄,但从外观上看,easyzone.easyzone.Name
对象具有.Name
、.soa
和.ttl
属性:
print sometuple[1].name
.soa
属性是另一个自定义类,具有.mname
,.rname
,.serial
,.refresh
,.retry
,.expire
和.minttl
属性。值得一提的是元组索引(实际上python中的所有索引)从0开始,现在,我可以用[1]分隔该对象,并在CSV中输入时返回。PHP for Python中是否有类似var_dump的东西,这个对象中有一个IP,但我不确定如何获取对象的内容或发现其结构?@xxphenom2xx您可以使用dir
(获取属性)和一些其他(更专业的)函数检查对象。或者询问文档。后者通常更好,因为它可以告诉您预期的方式是什么,可以提及警告/弃用/替代方案等,并且不会让您依赖于随着下一个小版本而改变的实现细节…@delnan:在这种情况下,文档几乎不存在,据我所知。@xXPhenom22Xx:示例中的z.root
对象是一个Name
对象,因此此处显示的.records()
调用示例适用。值得一提的是,元组索引(实际上python中的所有索引)从0开始非常好,现在我可以用[1]分隔该对象在CSV中输入时返回。PHP for Python中是否有类似var_dump的东西,这个对象中有一个IP,但我不确定如何获取对象的内容或发现其结构?@xxphenom2xx您可以使用dir
(获取属性)和一些其他(更专业的)函数检查对象。或者询问文档。后者通常更好,因为它可以告诉您预期的方式是什么,可以提及警告/弃用/替代方案等,并且不会让您依赖于随着下一个小版本而改变的实现细节…@delnan:在这种情况下,文档几乎不存在,根据我的理解。@xXPhenom22Xx:示例中的z.root
对象是Name
对象,因此此处显示的.records()
调用示例适用。