Perry served as a private and subsequently as lieutenant in the Confederate Cavalry during the American Civil War. He resumed the practice of law in Greenville in 1865. He served as a member of the State constitutional convention in 1865 and a member of the South Carolina House of Representatives in 1865 and 1866. He was the solicitor of the eighth judicial circuit of South Carolina 1868-1872 and served in the South Carolina Senate 1880-1884.
Perry was elected as a Democrat to the Forty-ninth, Fiftieth, and Fifty-first Congresses (March 4, 1885-March 3, 1891). He declined to be a candidate for renomination in 1890. After leaving Congress, he resumed the practice of law. He died at his home, “San Souci,” near Greenville, in 1902 and was buried in Christ Church Cemetery, Greenville, South Carolina.