LiL_Cj - 1 year ago 129

Python Question

I'm trying to output a right triangle with numbers. Here is what I have so far:

`for i in range(1, 10):`

for j in range(i):

print(i, end='')

print()

My output is this

`1`

22

333

4444

55555

666666

7777777

88888888

999999999

My question is this. Can I make these numbers run in sequence using a nested for loop

example:

`1`

12

123

1234

12345

123456

1234567

12345678

123456789

I've tried about 6 other sets and mostly keep getting the same output or multiple errors. Can anyone help me out with this?

Recommended for you: Get network issues from **WhatsUp Gold**. **Not end users.**

Answer Source

You might want to consider what happens next? This gives you a few ideas.

```
import itertools
for i in range(1, 21):
cycle = itertools.cycle([1,2,3,4,5,6,7,8,9,0])
for j in range(i):
print(next(cycle), end="")
print()
```

This cycles through the digits giving you output as follows:

```
1
12
123
1234
12345
123456
1234567
12345678
123456789
1234567890
12345678901
123456789012
1234567890123
12345678901234
123456789012345
1234567890123456
12345678901234567
123456789012345678
1234567890123456789
12345678901234567890
```

Or alternatively:

```
for i in range(1, 21):
for j in range(i):
print(((j % 10) + 1) % 10, end="")
print()
```