解析gnu cash xml文件
gnucashxml的Python项目详细描述
#gnu cash xml library
`gnucashxml`是一个[python][]库,用于解析[gnu cash][]xml文件。
这允许编写不依赖于gnu
现金库本身的报表实用程序,或要求主程序运行。
使用gnu cash 2.4.10进行测试。
所有
事务和拆分。它不支持预定的交易,
价格表,很可能只有最基本的商品。在
中,不支持XML文件的写入。
[python]:http://www.python.org/
[gnu cash]:http://www.gnucash.org/
它尽可能多地重用python数据结构。每当使用
日期或时间时,都会使用标准库“datetime”。所有
账户和交易余额均表示为标准的
“十进制”类型。
gnu现金中的三个主要概念是账户、交易和
拆分。交易由多个分割组成,这些分割指定从
哪个账户或通过
交易将商品转移到哪个账户。事务中的所有拆分都是平衡的。
`gnucashxml'提供的主要类反映了这些概念。a
“book”是包含所有其他内容的主类。“商品”是指账户中存储的东西,例如欧元或美元。
`帐户'是树结构的一部分,包含拆分。` split`
同样是“transactions”的一部分。
这些类都有一个“slots”成员,这是一个简单的字典,用于获取额外信息。GNU现金信息,如“隐藏”记录在这里。
在book.walk()中拆分:
if account.actype='收入':
收入合计+=和(拆分帐户的拆分值。拆分)
elif account.actype='费用':
费用合计+=和(拆分帐户的拆分值。拆分)
打印“总收入:{:9.2f}”。格式(收入合计*-1)
打印“总费用:{:9.2f}.格式(费用合计)
```
`gnucashxml`是一个[python][]库,用于解析[gnu cash][]xml文件。
这允许编写不依赖于gnu
现金库本身的报表实用程序,或要求主程序运行。
使用gnu cash 2.4.10进行测试。
所有
事务和拆分。它不支持预定的交易,
价格表,很可能只有最基本的商品。在
中,不支持XML文件的写入。
[python]:http://www.python.org/
[gnu cash]:http://www.gnucash.org/
它尽可能多地重用python数据结构。每当使用
日期或时间时,都会使用标准库“datetime”。所有
账户和交易余额均表示为标准的
“十进制”类型。
gnu现金中的三个主要概念是账户、交易和
拆分。交易由多个分割组成,这些分割指定从
哪个账户或通过
交易将商品转移到哪个账户。事务中的所有拆分都是平衡的。
`gnucashxml'提供的主要类反映了这些概念。a
“book”是包含所有其他内容的主类。“商品”是指账户中存储的东西,例如欧元或美元。
`帐户'是树结构的一部分,包含拆分。` split`
同样是“transactions”的一部分。
这些类都有一个“slots”成员,这是一个简单的字典,用于获取额外信息。GNU现金信息,如“隐藏”记录在这里。
在book.walk()中拆分:
if account.actype='收入':
收入合计+=和(拆分帐户的拆分值。拆分)
elif account.actype='费用':
费用合计+=和(拆分帐户的拆分值。拆分)
打印“总收入:{:9.2f}”。格式(收入合计*-1)
打印“总费用:{:9.2f}.格式(费用合计)
```