A perfect matching in a k-uniform hypergraph on n vertices, n divisible by k, is a set of n/k disjoint edges. In this paper we give a sufficient condition for the existence of a perfect matching in terms of a variant of the minimum degree. We prove that for every k 3 and sufficiently large n, a perfect matching exists in every n-vertex k-uniform hypergraph in which each set of k - 1 vertices is contained in n/2 + (log n) edges. Owing to a construction in [7], this is nearly optimal. For almost perfect and fractional perfect matchings we show that analogous thresholds are close to n/k rather than n/2. Research supported by NSF grant DMS-0300529. Research supported by KBN grant 2 P03A 015 23. Part of research performed at Emory University, Atlanta. Research supported by NSF grant DMS-0100784 1