ForgeryPy icon indicating copy to clipboard operation
ForgeryPy copied to clipboard

paragraphs function fails in python3 due to xrange

Open AlexFrazer opened this issue 9 years ago • 2 comments

I have been using forgerypy as instructed in Flask Web Development book. However, when I use paragraphs, I get the following traceback.

Traceback (most recent call last):
  File "/home/crow/code/flask_ve/bin/burddy", line 9, in <module>
    load_entry_point('burddy==0.1-dev', 'console_scripts', 'burddy')()
  File "/home/crow/code/flask_ve/src/flask-master/flask/cli.py", line 303, in main
    return click.Group.main(self, *args, **kwargs)
  File "/home/crow/code/flask_ve/lib/python3.4/site-packages/click/core.py", line 474, in main
    self.invoke(ctx)
  File "/home/crow/code/flask_ve/lib/python3.4/site-packages/click/core.py", line 758, in invoke
    return self.invoke_subcommand(ctx, cmd, cmd_name, ctx.args[1:])
  File "/home/crow/code/flask_ve/src/flask-master/flask/cli.py", line 295, in invoke_subcommand
    self, ctx, cmd, cmd_name, args)
  File "/home/crow/code/flask_ve/lib/python3.4/site-packages/click/core.py", line 767, in invoke_subcommand
    return cmd.invoke(cmd_ctx)
  File "/home/crow/code/flask_ve/lib/python3.4/site-packages/click/core.py", line 758, in invoke
    return self.invoke_subcommand(ctx, cmd, cmd_name, ctx.args[1:])
  File "/home/crow/code/flask_ve/lib/python3.4/site-packages/click/core.py", line 767, in invoke_subcommand
    return cmd.invoke(cmd_ctx)
  File "/home/crow/code/flask_ve/lib/python3.4/site-packages/click/core.py", line 659, in invoke
    ctx.invoke(self.callback, **ctx.params)
  File "/home/crow/code/flask_ve/lib/python3.4/site-packages/click/core.py", line 325, in invoke
    return callback(*args, **kwargs)
  File "/home/crow/code/burddy/burddy/articles/commands.py", line 22, in seed
    body=f.lorem_ipsum.paragraph(html=True, sentences_quantity=100)
  File "/home/crow/code/flask_ve/lib/python3.4/site-packages/forgery_py/forgery/lorem_ipsum.py", line 88, in paragraph
    sentences_quantity=sentences_quantity)
  File "/home/crow/code/flask_ve/lib/python3.4/site-packages/forgery_py/forgery/lorem_ipsum.py", line 100, in paragraphs
    for i in xrange(0, quantity):
NameError: name 'xrange' is not defined

I am using python 3.4, so this is to be expected as xrange is not defined.

quick bad fix I have:

if sys.version_info.major >= 3:
    xrange = range

AlexFrazer avatar Aug 05 '14 14:08 AlexFrazer

+1

pedro-teixeira avatar Feb 05 '15 14:02 pedro-teixeira

+1

bwangelme avatar Jul 18 '17 02:07 bwangelme