Question

I am trying to print results on the same line for a card game, here is the desired output I want:

desired output

Here is what I get:

actual ouput

Here is my code:

  for List in tableau:
        print
        print ("Row", Row, ":", end="")
        print
        Row += 1
        for x in List:
            print (x, end="")

I'm using Python 3, thanks.

Was it helpful?

Solution

You need to call print as a function in Python 3:

for List in tableau:
      print()  # Right here
      print ("Row", Row, ":", end="")

      Row += 1
      for x in List:
          print (x, end="")

Look at the difference in the output between Python 2 and Python 3:

Python 2:

>>> print

>>>

Python 3:

>>> print
<built-in function print>
>>> print()

>>>

A slightly more compact way of doing it would be like this:

for index, row in enumerate(tableau, start=1):
    print('Row {index} : {row}'.format(index=index, row=' '.join(row)))

OTHER TIPS

You need to change your prints to be functions.

for List in tableau:
    print()
    print ("Row", Row, ":", end="")
    print()
    Row += 1
    for x in List:
        print (x, end="")
  for List in tableau:
    print("\n")
    print ("Row", Row, ":", "")

    print("\n")
    Row += 1
    for x in List:
        print (x, end="")

That should do the trick. It worked for me.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top