Fix Python – If range() is a generator in Python 3.3, why can I not call next() on a range?

Perhaps I’ve fallen victim to misinformation on the web, but I think it’s more likely just that I’ve misunderstood something. Based on what I’ve learned so far, range() is a generator, and generators can be used as iterators. However, this code:
myrange = range(10)
print(next(myrange))

gives me this error:
TypeError: ‘range’ object is not an it….

Fix Python – Python TypeError: not enough arguments for format string

Here’s the output. These are utf-8 strings I believe… some of these can be NoneType but it fails immediately, before ones like that…
instr = “‘%s’, ‘%s’, ‘%d’, ‘%s’, ‘%s’, ‘%s’, ‘%s'” % softname, procversion, int(percent), exe, description, company, procurl

TypeError: not enough arguments for format string
Its 7 for 7 though?
….

Fix Python – super() raises “TypeError: must be type, not classobj” for new-style class

The following use of super() raises a TypeError: why?
>>> from HTMLParser import HTMLParser
>>> class TextParser(HTMLParser):
… def __init__(self):
… super(TextParser, self).__init__()
… self.all_data = []

>>> TextParser()
(…)
TypeError: must be type, not classobj

There is a similar question on StackOverf….