SM U-46 was one of the 329 submarines serving in the Imperial German Navy in World War I. U-46 was engaged in the combat during World War I and took part in the First Battle of the Atlantic. After the war, she served in the Imperial Japanese Navy as O-2.