Search code examples
pythonpep8

How should I write very long lines of code?


if i have a very long line of a code, is it possible to continue it on the next line for example:

 url='http://chart.apis.google.com/chart?chxl=1:|0|10|100|1,000|10,000|'
+ '100,000|1,000,000&chxp=1,0&chxr=0,0,' +
      max(freq) + '300|1,0,3&chxs=0,676767,13.5,0,l,676767|1,676767,13.5,0,l,676767&chxt=y,x&chbh=a,1,0&chs=640x465&cht=bvs&chco=A2C180&chds=0,300&chd=t:'

Solution

  • I would write it like this

    url=('http://chart.apis.google.com/chart?chxl=1:|0|10|100|1,000|10,000|'
         '100,000|1,000,000&chxp=1,0&chxr=0,0,%(max_freq)s300|1,0,3&chxs=0,676767'
         ',13.5,0,l,676767|1,676767,13.5,0,l,676767&chxt=y,x&chbh=a,1,0&chs=640x465'
         '&cht=bvs&chco=A2C180&chds=0,300&chd=t:'%{'max_freq': max(freq)})
    

    Note that the + are not required to join the strings. It is better this way because the strings are joined at compile time instead of runtime.

    I've also embedded %(max_freq)s in your string, this is substituted in from the dict at the end

    Also check out urllib.urlencode() if you want to make your url handling simpler