Shangnan (kinesisk: 商南县; pinyin: Shāngnán Xiàn) er et fylke i provinsen Shaanxi i Folkerepublikken Kina. Det ligger innen byprefekturet Shangluo.
I 1999 hadde fylket et folketall på 229 511 innbyggere.
Kinas riksvei 312 løper gjennom området. Den fører fra Shanghai og ender ipå grensen mot Kasakhstan, og passerer blant annet Suzhou, Nanjing, Hefei, Xinyang, Xi'an, Lanzhou, Jiayuguan og Ürümqi.