Usage in North America
Mainstream use in the United States is as follows: when it prefixes a number, it is read as "number", as in "a #2 pencil" (indicating "a number-two pencil"). When the symbol follows a number, the symbol indicates weight in pounds. (Five pounds are indicated as 5#.) This traditional usage still finds handwritten use, and may be seen on some signs in markets and groceries. It is also commonly known as the "pound sign".
Usage in the United Kingdom and Ireland
In the United Kingdom and Ireland, it is generally called a hash (probably ultimately from "hatch", referring to cross-hatching, although the exact derivation is disputed). It is never used to denote pounds weight (lb or lbs is used for this) or pounds sterling (for which "£" is used). It is never called the "pound sign", because that term is understood to mean the currency symbol "£", for pound sterling or (formerly) Irish pound.
The use of "#" as an abbreviation for "number" is often understood in Britain and Ireland, especially where there has been business or educational contact with American usage, but use in print is rare and British typewriters had "£" in place of the American "#". Where Americans might write "Symphony #5", the British and Irish are more likely to write "Symphony No. 5", or perhaps use the numero sign "Symphony № 5" (as in The New Grove Dictionary of Music and Musicians).