title: Python: Writing lists to .csv file
body: <p>I’m teaching myself programming, using Python as my initial weapon of choice. </p>
  
  <p>I have learnt a few basics and decided to set myself the challenge of asking the user for a list of names, adding the names to a list and then finally writing the names to a <code>.csv</code> file.</p>
  
  <p>Below is my code. It works. </p>
  
  <p>My question is what would you do differently, i.e. how could this code be improved for readability and efficiency. Would you approach the situation differently, structure it differently, call different functions? I am interested in, and would appreciate a great deal, the feedback from more experienced programmers.</p>
  
  <p>In particular, I find certain parts clunky; such as having to specify to the user the required format for data entry. If I were to simply request the data (name age location) without the commas however, then each record, when written to <code>.csv</code>, would simply end up as one record per cell (Excel) – this is not the desired result.    </p>
  
  <pre><code>#Requesting user input. 
  guestNames = input("Please enter the names of your guests, one at a time.\n"\
      "Once you have finished entering the information, please type the word \"Done\".\n"\
      "Please enter your names in the following format (Name, Age, Location). ").capitalize()
  
  guestList.append(guestNames)
  
  while guestNames.lower() != "done".lower() :
      guestNames = input("Please enter the name of your " + guestNumber[number] + " guest: ").capitalize()
      guestList.append(guestNames)
      number += 1
  
  #Sorting the list. 
  guestList.sort()
  guestList.remove("Done")
  
  #Creating .csv file. 
  guestFile = open("guestList.csv","w")
  guestFile.close()
  
  #Writing to file. 
  for entries in guestList :
      guestFile = open("guestList.csv","a")
      guestFile.write(entries)
      guestFile.write("\n")
      guestFile.close()
  </code></pre>