为什么北京是首都?
因为古代中国的政治传统是在首都附近建立陪都,作为战时或者祭祀时的备用场所。最典型的例子就是西安,武汉,洛阳的建城史都可以追溯到先秦,而且都是作为周天子,汉高祖以及唐太宗的东都存在的(当然,后来这些城市地位超越京城的时期并不在首都历史中抹去)。而北京作为元明清三代京师的存在时间虽然比这些城市要短得多,但是其重要性却远远超过了上述城市。
其次,作为京师的重要性还体现在其经济和军事上的优势上。元代设立了京师总管府,作为中央派驻首都地区的行政机构,直接对中书省负责。明代改称应天府,清代称顺天府,下辖州县和明朝相比都有减少,而且赋税归中央直接掌握,不交给户部,这样便加强了中央对地方的控制。到了民国初年,尽管废除了帝制,建立了共和,但北京作为前清故址和中国近代史上第一批殖民地,依然具有特殊的地位和政治影响,所以北洋政府和国民党政府都没能把首都放在别处。
至于有人说南京,杭州等城市比北京更适合做中国第一大城市。我的回答是,中国历史上首次统一全国并且长期稳定统治的王朝是从秦始皇开始,此前无论是分封制还是郡县制,天下名义上是统一,实际上却是分裂的。这种局面为中原政权应对北方游牧政权的进攻提供了缓冲地带,保证了北方游牧政权的南下不能直接面对中原政权的核心区域——华北平原。
然而,这一形势到了元朝发生了转变,由于蒙古骑兵的冲击和内迁的少数民族重新崛起,中原政权丧失了长城之险,不得不依靠北京附近的长城和鞑靼突厥的蒙古高原来确保自身安全。为了应付这种情况,明朝在北京周边设立了九边重镇,从山西到辽东布置了厚厚的防线,抵御北方少数民族的南下攻掠。同时,随着北方人口不断向南迁移,北京的经济地位也不断上升,明成祖迁都北京后,大量南方人口涌入北京周围地区,使北京成为北方的军事和经济重镇,从而奠定了北京作为中国第一城市的地位。