2008年12月10日星期三

“百姓”古今意义之别对阅读《道德经》造成的误解

中国与西方在思维、表达方式存在巨大的差异。西方从很早就形成了严密的形式逻辑体系(在欧儿里得几何学中)。而中国从历史上就没有形成这方面的体系,走的是另外一条道路,就是观象取意,在思维上叫做像思维,以《易经》为代表。这种表达方式不对事物下定义,而是从不同角度取象来对事物来进行描述,因此周易中讲“观物取象、象以尽义”。“象思维”大致可以分为三个层次:具象、意象、体悟之象。

作为古代经典之一的《道德经》也是采用这种描述,书中涉及治国、修身、谈兵、自然等很多的象,而几乎没有任何概念性的内容。采用这种描述方式的直接后果是,由于某些词在演变过程中发生了很大的变化,给后人造成了很大的误解,道德经中的“百姓”就是一例。下面我们来看这两段内容:

第五章

天地不仁,以万物为刍狗;圣人不仁,以百姓为刍狗。天地之间,其犹橐龠乎?虚而不屈,动而愈出。多闻数穷,不如守中。

第四十九章

圣人常无心,以百姓心为心。善者吾善之,不善者吾亦善之,得善。信者吾信之,不信者吾亦信之,得信。圣人在天下,歙歙焉,为天下浑其心,圣人皆孩之。


我们先说第五章的“天地不仁,以万物为刍狗;圣人不仁,以百姓为刍狗”,按照现在的理解,百姓当然指的是人民大众了,所以有一些注家在点评这段时认为,这是老子对天地和圣人的控诉,当然现在这种论点极少。而大部分注家认为这一句的意思是天地和圣人无私心,任万物和百姓自生自灭,这种观点与《道德经》全文的意思相近,所以是主流的。

其实,这也是有问题的。问题就在对于“百姓”的理解。在古代庶民无姓,有土有官爵者才有姓。所以“百姓”作贵族的通称,而战国之后才泛指平民。我们知道老子应该是春秋晚期的人,而且是周王室的史官,因此他不可能将“百姓”指代平民,在《道德经》中百姓只能是有官爵的人,或者是贵族。刍狗是古代祭祀时用草扎成的狗,在祭祀时披红挂绿,备受尊崇,而祭祀完成之后,被任意丢弃。因此,第五章这段话的意思应该是这样的:

天地没有任何偏爱,把万物当成刍狗,需要其繁盛时,就让其繁盛,需要其枯萎时,就使其枯萎。
圣人没有任何偏爱,把百官当成刍狗,适合就任用他,不适合就罢免他。


这不就是最佳的管理诀窍吗?选择合适的时机,任用合适的人选作合理的事情,而且官员能上能下。:)

同样,第四十九章中的意思也就好理解了:

圣人不固执己见,在做事之前,先听取百官的不同意见。

我们知道,老子是崇尚远古的,这段话其实反应了远古原始社会的一种民主方式。

2008年12月5日星期五

ElementTree如何输出XML的版本

默认的lxml.etree是用ascii编码,在输出的XML文件中没有,如果需要在输出的XML文件中包含,需要在tree.write()函数中设置参数。例如:

import lxml.etree as et
tree = et.parse('sample-ns.xml')
tree = tree.write('test.xml', encoding='utf-8', xml_declaration=True)

原始文件是:

<root xmlns='namespace'>
<element key='value'>text</element>
<element>text</element>tail
<empty-element/>
</root>


输出的文件是:

<?xml version='1.0' encoding='utf-8'?>
<root xmlns="namespace">
<element key="value">text</element>
<element>text</element>tail
<empty-element/>
</root>