Skip to content

paragraphs function fails in python3 due to xrange #3

@AlexFrazer

Description

@AlexFrazer

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions