The Czech Republic's public holidays are on set days every year (apart from Easter Monday and Good Friday) so when they fall on a weekend, workers don't get a replacement day off. The public holidays are:
January 1st (New Year's Day), Good Friday, Easter Monday, May 1st (Labor Day), May 8th (Day of Liberation from Fascism), July 5th (Day of Slavic Missionaries), July 6th (Jan Hus), September 28th (St. Wenceslaus), October 28th (Independence Day), November 17th (Struggle for Freedom and Democracy), December 24th (Christmas Eve, although shops remain open until midday), December 25th (Christmas Day), December 26th (St. Stephen's Day).
On all holidays but Christmas and Easter you can expect shops and restaurants to be open as well as most tourist attractions. When the 5th and 6th of July fall on weekdays, it seems like the whole country goes on vacation for the week and the residential parts of the city may seem deserted.