Because in Middle English the "p" was pronounced, but over time the sound was dropped as the language changed into our Modern English (ex: knight was pronounced "k-ni-cked," night "ni-GH-t", and England "En-go-lond-de").
There are also words imported into English which don't have the sound the "p" is supposed to represent native to the language, so the sound would often be dropped or adapted in some way. Ptolemy is a name whose initial sound (represented by "pt") isn't native to English, so it's simply dropped, since it's a translation from Greek.
Some words with a silent "p" include psychology, pneumonia, and raspberry.
pneumoniapsalmpseudonympsychiatricpsychiatristpsychicpsychologyptomaineptarmiganpsychpsychepsychopsychopath
In words starting with pt-, the p is silent (as pterygium). In words starting with PS-, also the p is silent (psycho-<whatever> or pseudo-<whatever>). In phthisis the pH is silent. I seem to be stuck on the letter "p" right now, but I am sure there are words with other silent letters.
The p is silent pronounced salm
Some words that start with a silent "b" include: subtle, thumb, and knob.
becuase they are silent
In the word "psychology," the "P" is silent because it is derived from the Greek word "psyche." The English language borrowed this word along with its silent "P." In words like "pneumonia" or "psychiatry," the "P" is silent as well, following the same etymological pattern.
mnemonic
bdellium
Some words that start and end with P are:parsnippeeppimpplopplumppolyppoopprimpproppulp
Some words that have a silent "b" at the beginning include subtle, plumber, and doubt.
Words that start with a p that are the definition of a strike are picket and protest.