Abstract: The present invention relates to a method for preparing (?)-huperzine A. The method involves: allowing a mixture of (±)-huperzine A obtained from chemical synthesis and a chiral acid to form (±)-huperzine A chiral acid salt under suitable conditions; recrystallizing the chiral acid salt from an organic solvent and basifying with an alkali to obtain optically pure (?)-huperzine A. The method is convenient to operate and suitable for industrial production. The chemical purity and optical purity of (?)-huperzine A obtained by the method are each greater than 99.5%, satisfying the requirement for raw pharmaceutical purity in the pharmaceutical industry.