很大的原因应该是宋朝当时大力推行科举制度,文人越来越多,很多权利被士大夫所控制,皇帝的权利得到削弱,最后迫不得已有这样的规定。因为皇帝忌惮武官的权利,把权利放到越来越多的文人身上,文官的政治力量得到空前发展,而皇帝为了巩固自己的政权不得不拉拢文官,所以很多情况下皇帝也不得不对这些文人低头,以至于后来有了这样的规定。
因为宋朝推崇依文治国,虽然有很多好处,但同时也有很多弊端,文人阶层作为宋朝最强大的利益集团,即使是皇帝拿他们也没办法,很多情况下皇帝不是不想杀而是不能杀,所以才会出现不杀士大夫这样的现象。
不杀士大夫这样的的说法也有可能是被人夸大其词了,与真实历史情况有点不同,这是另一种说法。很多学者认为赵匡胤不是不杀这些士大夫,而是为了让大家知无不言言无不尽,对这个国家的事情能提出更多的观点,敢于提出自己的想法和对皇帝的意见,所以才有了这样的规定,这是为了鼓励更多的文人能直抒胸臆而不会因此掉脑袋。
宋朝的冗官现象很严重,官员间裙带关系错综复杂,因为这样的现象维持太久不能根除,所以不杀士大夫的规定也越来越得到肯定。而且因为宋太祖的规定以至于后代们即使想杀某个文人,但也要顾及祖宗的规定而不能实施,以至于后来这些文人们更是有恃无恐,