彭宣字子佩,淮阳阳夏人。研究《周易》,师从张禹,被推荐做了博士,又升做东平太傅。后来张禹又因彭宣是皇帝的师傅的关系,对他格外尊重信任,向朝廷推举彭宣说他明经有威严,可任政事,由此进入京都做了右扶风,升为廷尉,后来因为彭宣是诸侯国人,又只好离京都做太原守。几年后,彭宣又被召入京都做大司农、光禄勋、右将军。汉哀帝即位,调任左将军。一年多以后,皇上想让彭宣到丁、傅处任爪牙官,于是用策书告彭宣说:“有司数上奏说诸侯国人不能在宫中值宿,担任警卫,将军不宜主管兵马、处重要位置。朕因将军任汉将之重职,你儿子又前娶淮阳王女,婚姻不绝,这不是国家的制度。现派光禄大夫赐将军黄金五十斤,安车驷马,希望你上交左将军印绶,以关内侯身份归家。”彭宣被罢官数年后,谏议大夫鲍宣多次向上推举他。恰逢元寿元年(公元前2年)正月发生日食,鲍宣又再次重提任用彭宣之事,于是皇帝召回彭宣任光禄大夫,后升御史大夫,又转任大司空,封长平侯。