[从头读历史] 第301节 山海经 其实这不是一本神话书

剧情提要:
即使是现在,也有很多人认同《山海经》并不是一部神话书,特别是五藏山经,结构相
当的严谨,完全就是本着科学的态度来丈量河山,只不过由于当时的记录太过简单,
时间又过去了这么久,很多地名已经几经变更,所以现在看来就是云里雾里了。

正剧开始:
星历2016年07月13日 16:26:34, 银河系厄尔斯星球中华帝国江南行省。

[工程师阿伟]正在和[机器小伟]一起研究[山海经]。




以前有很多人画了很多关于《山海经》的图,比如这张:



再比如这张:


稍微有点价值的是这张:



但是这张图很明显没有计算长度。

那么首先,在《五藏山经》里面都是以里作为单位的,这个单位到底怎么度量?



也就是里相当于414M,今天是500M,反正就在这个范围里面吧。


那根据这个尺度推的几条经脉:



推了才发现,你即使按照原文输入数据,求出来的和也和它自己写的不一样,很多的经脉还少了那么一座山。

这样就说明它本身已经无法自己对应上了。


而且由于时间久远,那些地名已经很多都是不知所云了,这也就是《山海经》只能当成神话来读了。


但是这里还有一个有价值的发现:



而对于《海经》和《大荒经》:



《五藏山经》可以认为是大禹记录的,而《海经》和《荒经》就是很多后来的人零星地添加上去的了。


而山的命名有些和二十八宿是有些关系的,这样对于确定那座山的位置或许会有些帮助:



那么到这里,就可以给《山海经》这部书下结论了:或许当时是作为一部科学记录书去编写的,

但经过沧海桑田,现在它其实并没有什么价值。因为它记录山的手法过于模糊,现在自然是没用的,

而记录的奇闻异事又过于脱离事实,可以肯定这些传闻必然都是有原型的,不可能真的是外星上的

事物,但已经无法推出其原型和所指了。


<span style="font-size:18px;">#山海经
class ShanHaiJing():
    #起头
    def setHead(self, x, y, name):
        return [[x, y, name]];
    #往北
    def goNorth(self, array, distance, name):
        if (len(array) > 0):
            vec = array[-1];
            x, y = vec[0], vec[1];
            array.append([x, y+distance, name]);

        return array;

    #往东
    def goEast(self, array, distance, name):
        if (len(array) > 0):
            vec = array[-1];
            x, y = vec[0], vec[1];
            array.append([x+distance, y, name]);

        return array;

    #往南
    def goSouth(self, array, distance, name):
        if (len(array) > 0):
            vec = array[-1];
            x, y = vec[0], vec[1];
            array.append([x, y-distance, name]);

        return array;

    #往西
    def goWest(self, array, distance, name):
        if (len(array) > 0):
            vec = array[-1];
            x, y = vec[0], vec[1];
            array.append([x-distance, y, name]);

        return array;

    #往东南
    def goSouthEast(self, array, distance, name):
        if (len(array) > 0):
            vec = array[-1];
            x, y = vec[0], vec[1];
            array.append([x+distance, y-distance, name]);

        return array;

    #往西南
    def goSouthWest(self, array, distance, name):
        if (len(array) > 0):
            vec = array[-1];
            x, y = vec[0], vec[1];
            array.append([x-distance, y-distance, name]);

        return array;

    #往东北
    def goNorthEast(self, array, distance, name):
        if (len(array) > 0):
            vec = array[-1];
            x, y = vec[0], vec[1];
            array.append([x+distance, y+distance, name]);

        return array;

    #往西北
    def goNorthWest(self, array, distance, name):
        if (len(array) > 0):
            vec = array[-1];
            x, y = vec[0], vec[1];
            array.append([x-distance, y+distance, name]);

        return array;

    def test(self, choice = 's1'):
        if (choice == 's1'):
            southHill_1 = self.setHead(-50, -100, '南山经');

            southHill_1 = self.goEast(southHill_1, 50, '鹊山.招摇');
            southHill_1 = self.goEast(southHill_1, 300, '堂庭');
            southHill_1 = self.goEast(southHill_1, 380, '猨翼');        
            southHill_1 = self.goEast(southHill_1, 370, '杻阳');            
            southHill_1 = self.goEast(southHill_1, 300, '柢山');
            
            southHill_1 = self.goEast(southHill_1, 300, '亶爰');
            southHill_1 = self.goEast(southHill_1, 300, '基山');
            southHill_1 = self.goEast(southHill_1, 300, '青丘');
            southHill_1 = self.goEast(southHill_1, 350, '箕尾');

            southHill_1 = self.goEast(southHill_1, 350, '南一止');

            return southHill_1;
        elif (choice == 's2'):
            southHill_2 = self.setHead(-50, -100, '南次二山');

            southHill_2 = self.goEast(southHill_2, 50, '柜山');
            southHill_2 = self.goSouthEast(southHill_2, 450, '长右');
            southHill_2 = self.goEast(southHill_2, 340, '尧光');
            southHill_2 = self.goEast(southHill_2, 350, '羽山');        
            southHill_2 = self.goEast(southHill_2, 400, '句余');
            
            southHill_2 = self.goEast(southHill_2, 500, '浮玉');
            southHill_2 = self.goEast(southHill_2, 500, '成山');
            southHill_2 = self.goEast(southHill_2, 500, '会稽');
            southHill_2 = self.goEast(southHill_2, 500, '夷山');
            southHill_2 = self.goEast(southHill_2, 500, '仆勾');

            southHill_2 = self.goEast(southHill_2, 500, '咸阴');
            southHill_2 = self.goEast(southHill_2, 400, '洵山');
            southHill_2 = self.goEast(southHill_2, 400, '虖勺');
            southHill_2 = self.goEast(southHill_2, 500, '区吴');
            southHill_2 = self.goEast(southHill_2, 500, '鹿吴');

            southHill_2 = self.goEast(southHill_2, 500, '漆吴');
            southHill_2 = self.goEast(southHill_2, 400, '南二止');

            return southHill_2;
        elif (choice == 's3'):
            southHill_3 = self.setHead(-50, -100, '南次三山');

            southHill_3 = self.goEast(southHill_3, 50, '天虞');
            southHill_3 = self.goEast(southHill_3, 500, '祷过');
            southHill_3 = self.goEast(southHill_3, 500, '丹穴');
            southHill_3 = self.goEast(southHill_3, 500, '发爽');        
            southHill_3 = self.goEast(southHill_3, 400, '旄山');
            
            southHill_3 = self.goEast(southHill_3, 400, '非山');
            southHill_3 = self.goEast(southHill_3, 500, '阳夹');
            southHill_3 = self.goEast(southHill_3, 500, '灌湘');
            southHill_3 = self.goEast(southHill_3, 500, '鸡山');
            southHill_3 = self.goEast(southHill_3, 400, '令丘');

            southHill_3 = self.goEast(southHill_3, 370, '仑者');
            southHill_3 = self.goEast(southHill_3, 580, '禺槀');
            southHill_3 = self.goEast(southHill_3, 580, '南禺');

            southHill_3 = self.goEast(southHill_3, 800, '南三止');#少一山,少800里

            return southHill_3;
        elif (choice == 'w1'):
            westHill_1 = self.setHead(50, -100, '西山经');

            westHill_1 = self.goWest(westHill_1, 50, '华山.钱来');
            westHill_1 = self.goWest(westHill_1, 45, '松果');
            westHill_1 = self.goWest(westHill_1, 60, '太华');
            westHill_1 = self.goWest(westHill_1, 80, '小华');        
            westHill_1 = self.goWest(westHill_1, 80, '符禺');
            
            westHill_1 = self.goWest(westHill_1, 60, '石脆');
            westHill_1 = self.goWest(westHill_1, 70, '英山');
            westHill_1 = self.goWest(westHill_1, 52, '竹山');
            westHill_1 = self.goWest(westHill_1, 120, '浮山');
            westHill_1 = self.goWest(westHill_1, 70, '俞次');

            westHill_1 = self.goWest(westHill_1, 150, '时山');
            westHill_1 = self.goWest(westHill_1, 170, '南山');
            westHill_1 = self.goWest(westHill_1, 408, '大时');
            westHill_1 = self.goWest(westHill_1, 320, '嶓冢');
            westHill_1 = self.goWest(westHill_1, 350, '天帝');

            westHill_1 = self.goSouthWest(westHill_1, 380, '臯涂');
            westHill_1 = self.goWest(westHill_1, 180, '黄山');
            westHill_1 = self.goWest(westHill_1, 200, '翠山');
            westHill_1 = self.goWest(westHill_1, 250, '騩山');

            westHill_1 = self.goWest(westHill_1, 0, '西一止');

            return westHill_1;
        elif (choice == 'w2'):
            westHill_2 = self.setHead(50, -100, '西次二经');

            westHill_2 = self.goWest(westHill_2, 50, '钤山');
            westHill_2 = self.goWest(westHill_2, 200, '泰冒');
            westHill_2 = self.goWest(westHill_2, 170, '数历');
            westHill_2 = self.goWest(westHill_2, 150, '高山');        
            westHill_2 = self.goSouthWest(westHill_2, 300, '女床');
            
            westHill_2 = self.goWest(westHill_2, 200, '龙首');
            westHill_2 = self.goWest(westHill_2, 200, '鹿台');
            westHill_2 = self.goWest(westHill_2, 200, '鸟危');
            westHill_2 = self.goWest(westHill_2, 400, '小次');
            westHill_2 = self.goWest(westHill_2, 300, '大次');

            westHill_2 = self.goWest(westHill_2, 400, '薰吴');
            westHill_2 = self.goWest(westHill_2, 400, '厎阳');
            westHill_2 = self.goWest(westHill_2, 250, '众兽');
            westHill_2 = self.goWest(westHill_2, 500, '皇人');
            westHill_2 = self.goWest(westHill_2, 300, '中皇');

            westHill_2 = self.goWest(westHill_2, 350, '西皇');
            westHill_2 = self.goWest(westHill_2, 350, '莱山');
            westHill_2 = self.goWest(westHill_2, 0, '西二止');

            return westHill_2;
        elif (choice == 'w3'):
            westHill_3 = self.setHead(50, -100, '西次三经');

            westHill_3 = self.goWest(westHill_3, 50, '崇吾');
            westHill_3 = self.goNorthWest(westHill_3, 300, '长沙');
            westHill_3 = self.goNorthWest(westHill_3, 370, '不周');
            westHill_3 = self.goNorthWest(westHill_3, 420, '峚山');        
            westHill_3 = self.goNorthWest(westHill_3, 420, '钟山');
            
            westHill_3 = self.goNorthWest(westHill_3, 180, '泰器');
            westHill_3 = self.goWest(westHill_3, 320, '槐江');
            westHill_3 = self.goSouthWest(westHill_3, 400, '昆仑');
            westHill_3 = self.goWest(westHill_3, 370, '乐游');

            westHill_3 = self.goWest(westHill_3, 400, '流沙');
            westHill_3 = self.goNorthWest(westHill_3, 350, '玉山');
            westHill_3 = self.goWest(westHill_3, 480, '轩辕');
            westHill_3 = self.goWest(westHill_3, 300, '积石');
            westHill_3 = self.goWest(westHill_3, 200, '长留');

            westHill_3 = self.goWest(westHill_3, 280, '章莪');
            westHill_3 = self.goWest(westHill_3, 300, '阴山');
            westHill_3 = self.goWest(westHill_3, 200, '符惕');
            westHill_3 = self.goWest(westHill_3, 220, '三危');
            westHill_3 = self.goWest(westHill_3, 190, '騩山');
            
            westHill_3 = self.goWest(westHill_3, 350, '天山');
            westHill_3 = self.goWest(westHill_3, 290, '泑山');
            westHill_3 = self.goWest(westHill_3, 100, '翼望');
            
            westHill_3 = self.goWest(westHill_3, 0, '西三止');

            return westHill_3;
        elif (choice == 'w4'):
            westHill_4 = self.setHead(50, -100, '西次四经');

            westHill_4 = self.goWest(westHill_4, 50, '阴山');
            westHill_4 = self.goNorth(westHill_4, 50, '劳山');
            westHill_4 = self.goWest(westHill_4, 50, '罢父');            
            westHill_4 = self.goNorth(westHill_4, 70, '中山');            
            westHill_4 = self.goNorth(westHill_4, 200, '鸟山');
            
            westHill_4 = self.goNorth(westHill_4, 120, '上申');            
            westHill_4 = self.goNorth(westHill_4, 180, '诸次');
            westHill_4 = self.goNorth(westHill_4, 180, '号山');
            westHill_4 = self.goNorth(westHill_4, 220, '盂山');
            westHill_4 = self.goWest(westHill_4, 250, '白於');
            
            westHill_4 = self.goNorthWest(westHill_4, 300, '申首');
            westHill_4 = self.goWest(westHill_4, 55, '泾谷');
            westHill_4 = self.goWest(westHill_4, 120, '刚山');
            westHill_4 = self.goWest(westHill_4, 200, '洛水');
            westHill_4 = self.goWest(westHill_4, 350, '英鞮');
            
            westHill_4 = self.goWest(westHill_4, 300, '中曲');
            westHill_4 = self.goWest(westHill_4, 260, '邽山');
            westHill_4 = self.goWest(westHill_4, 220, '鸟鼠');
            westHill_4 = self.goSouthWest(westHill_4, 360, '崦嵫');

            
            westHill_4 = self.goWest(westHill_4, 0, '西四止');

            return westHill_4;

        </span>

本节到此结束,欲知后事如何,请看下回分解。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值