lie.1296 at gmail.com
Wed Oct 1 20:10:55 CEST 2008
On Wed, 01 Oct 2008 09:41:57 -0700, sandric ionut wrote:
> I have the following situation:
> nameAll = 
Here you defined nameAll as a list
> for i in range(1,10,1):
That range is superfluous, you could write this instead:
for i in range(10):
> n = "name" + str([i])
in this, you're converting a list into a string. If i was 2, the
conversion result into: 'name' + ''
> nameAll += n
Here you're appending n into the list nameAll. Python's string behaves
like a list, that it is iterable, so list accepts it.
> print nameAll
your code should be:
listAll = 
for i in range(1, 11):
n = "name" + str(i)
print ' '.join(listAll)
or using list comprehension and string interpolation:
print ' '.join('name%s' % i for i in range(1, 11))
 Note that range(10) starts with 0, and produces a list of 10 numbers.
If, like in your expected result, you want name1 till name10, you'll need
range(1, 11) because range is half-open, it includes 1, but not 11. This
behavior has some unique property that simplifies many things, although
it do takes some time to get used to.
More information about the Python-list