Il codice così com'è da questa risposta:
codice:
>>> 
Porta /dev/ttyS0 aperta
Dati ricevuti dalla seriale:
AT 
digita INVIA per uscire
Poi ho aggiunto il print num:
codice:
import serial

ser = serial.Serial(0)  #Seleziona la porta seriale COM4
ser.baudrate = 9600 #Imposta il baudrate a 9600bps

ser.open() #apre la porta com

#verifica se la porta e' aperta
if ser.isOpen():
   com_num = ser.portstr
   print ("Porta " + com_num + " aperta")
   #invia il comando alla seriale
   buffer = "AT "
   ser.write(buffer)     
   #Loop d'attesa caratteri
   num = 0
   while num == 0:
       print num
       num = ser.inWaiting()
   #scarica il buffer della seriale
   buffer = ser.read(num)
   print ("Dati ricevuti dalla seriale:")
   print buffer
   ser.close()             #chiude la porta
else:
  print ("Porta seriale gia' in uso o inesistente") 
s = raw_input("digita INVIA per uscire")
e mi risponde così:
codice:
Porta /dev/ttyS0 aperta
0
0
Dati ricevuti dalla seriale:
AT 
digita INVIA per uscire
Grazie