Python - TypeError: Can't convert 'int' object to str implicitly
Question: I try to write to a file but python gives me an error.

    
    
    f.write('20/10/2013;SP;83428407;10:00;-;10:30;'.format(random.randrange(0,6))+';'.format(random.randrange(0,6))+';:00:15;:03:12;;;0;2;:00:58;50,0;2;0;0;0;0;0;0;0;0;0'+'\n')
    

Also try with str()

    
    
    # f.write('20/10/2013;SP;83428407;10:00;-;10:30;'+str(random.randrange(0,6))+';'+str(random.randrange(0,6))+';:00:15;:03:12;;;0;2;:00:58;50,0;2;0;0;0;0;0;0;0;0;0'+'\n')
    

The same error:

    
    
    TypeError: Can't convert 'int' object to str implicitly
    


Answer: Your first line is missing the format placeholders:

    
    
    f.write('20/10/2013;SP;83428407;10:00;-;10:30;{};{};:00:15;:03:12;;;0;2;:00:58;50,0;2;0;0;0;0;0;0;0;0;0\n'.format(
        random.randrange(0,6), random.randrange(0,6)))
    

It is the `{}` placeholders that `str.format()` fills. Note that you only need
**one** string, with placeholders where the arguments to `str.format()` are to
be filled in.

Demo output:

    
    
    >>> import random
    >>> '20/10/2013;SP;83428407;10:00;-;10:30;{};{};:00:15;:03:12;;;0;2;:00:58;50,0;2;0;0;0;0;0;0;0;0;0\n'.format(
    ...     random.randrange(0,6), random.randrange(0,6))
    '20/10/2013;SP;83428407;10:00;-;10:30;0;5;:00:15;:03:12;;;0;2;:00:58;50,0;2;0;0;0;0;0;0;0;0;0\n'
    >>> '20/10/2013;SP;83428407;10:00;-;10:30;{};{};:00:15;:03:12;;;0;2;:00:58;50,0;2;0;0;0;0;0;0;0;0;0\n'.format(
    ...     random.randrange(0,6), random.randrange(0,6))
    '20/10/2013;SP;83428407;10:00;-;10:30;3;1;:00:15;:03:12;;;0;2;:00:58;50,0;2;0;0;0;0;0;0;0;0;0\n'
    

