I am writing a wrapper to control my GSM modems connected to my Machine, the problem is I have different set of configuration for each modem. And I am not sure that for example when I restart my PC my Modem A would be attached to same port like it was previously.

For example:
I have two modems, A & B

A is attached to /dev/ttyACM0 ATM and B on /dev/ttyACM1

Should I be blind sure that they will always attach to same devices? and If Not, can I define anywhere that this device should always be attached to this filename.

Or better yet, can I get USB device ID's in python? Thanks...