# Converting List and tuples using str() function

• Python

## Summary:

I am slightly confused to why using the str() on a tuple and list produces a length greater than a a defined string when comparing lengths

## Main Question or Discussion Point

I am currently working my way through some w3schools python exercise on tuples and lists etc and one question was to write a program to converted a tuple to a string.

Now originally I used the str() function on the tuple and printed the result. I then used the string in a for loop for a further question and realized that the tuples and lists were printing additional terms compared when just defining a string using ' '.

As can be seen from my code below

Python:
t =(1,2,3,4,5)
L =[1,2,3,4,5]

string = '1,2,3,4,5'

t = str(t)
L = str(L)

length = len(t)
length1 = len(L)
length2 = len(string)

print(length)
print(length1)
print(length2)
Output
15
15
9

My question why is this, why is there 15 for the list and the tuple yet 9 for the string? Where is the additional six count coming from in the tuple and list?

## Answers and Replies

Related Programming and Computer Science News on Phys.org
PeterDonis
Mentor
2019 Award
Where is the additional six count coming from in the tuple and list?
Try printing the actual strings you made from the tuple and the list and counting the characters. In other words:

Python:
print(t)
print(L)

jedishrfu and Taylor_1989
Try printing the actual strings you made from the tuple and the list and counting the characters. In other words:

Python:
print(t)
print(L)
Ah I see the tuple and lists output spaces, thank you.

jedishrfu
PeterDonis
Mentor
2019 Award
the tuple and lists output spaces
And the delimiters as well, yes.

Taylor_1989 and jedishrfu