title: curr.execute("""INSERT INTO CITY (name) values (%s);""",(cities)) fails to insert list into db
body: <p>I am trying to insert a list into a postgres table.</p>
  
  <p>Inside the try, it fails on this line:</p>
  
  <pre><code>curr.execute("""INSERT INTO CITY (name) values (%s);""",(cities))
  </code></pre>
  
  <p>I've tried many variations including using just a string, or brackets and nothing is working. I've also tried executemany and that also doesn't work.</p>
  
  <pre><code>try:
  conn = psycopg2.connect("dbname=testapp user=postgres")
  curr = conn.cursor()
  curr.execute("""INSERT INTO CITY (name) values (%s);""",(cities))
  conn.commit()
  curr.close()
  conn.close()
  </code></pre>
  
  <p>except:
      print ("unable to insert")</p>
  
  <p>EDIT:</p>
  
  <p>I get "not all arguments converted during string formatting" with execute or executemany.</p>
  
  <p>I created a smaller city list using </p>
  
  <p>cities = ['San Francsico', 'San Jose']</p>
  
  <p>But the actual list has 100 cities in it. </p>
  
  <p>If I use </p>
  
  <pre><code>curr.executemany("INSERT INTO CITY (name) values (%s);","San Francisco",)
  </code></pre>
  
  <p>Then S 
  a
  n
  etc
  is inserted into the db, ie each row has a letter.</p>