Quelle est la différence entre <class 'str'> et <type 'str'>

Je suis nouveau sur le python. Je suis confus par la <class 'str'>.
J'ai eu un str en utilisant:

response = urllib.request.urlopen(req).read().decode()

Le type de réponse est <class 'str'>, pas <type 'str'>.
Lorsque j'essaie de les manipuler ce str en 'boucle':

for ID in response: 

La 'réponse' est PAS lu par ligne, MAIS de par son caractère.
J'ai l'intention de mettre chaque ligne de réponse dans chaque élément d'une liste. Maintenant, je dois écrire la réponse dans un fichier et choisissez "ouvrir" pour obtenir une chaîne de caractères de <type 'str'> que je peux utiliser dans 'boucle'.

Êtes-vous à l'aide de Python 2 et Python 3?
response = urllib.request.urlopen(req)?
Python 3. Il est OK avec la lib.

OriginalL'auteur dom free | 2017-02-05