Skip to main content
deleted 51 characters in body; edited title
Source Link
Jamal
  • 34.9k
  • 13
  • 133
  • 237

Python: Writing lists to .csv file

I’mI'm teaching myself programming, using Python as my initial weapon of choice.

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 .csv file.

Below is my code. It workscsv file.

My question is whatWhat 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.

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 .csv, would simply end up as one record per cell (Excel) – this is not the desired result.

guestNames = ""
guestList = []
number = 0
guestNumber = ["second","third","fourth","fifth","sixth"]
finalList = ""

#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()

Python: Writing lists to .csv file

I’m teaching myself programming, using Python as my initial weapon of choice.

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 .csv file.

Below is my code. It works.

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.

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 .csv, would simply end up as one record per cell (Excel) – this is not the desired result.

guestNames = ""
guestList = []
number = 0
guestNumber = ["second","third","fourth","fifth","sixth"]
finalList = ""

#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()

Writing lists to .csv file

I'm teaching myself programming, using Python as my initial weapon of choice.

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 .csv file.

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.

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 .csv, would simply end up as one record per cell (Excel) – this is not the desired result.

guestNames = ""
guestList = []
number = 0
guestNumber = ["second","third","fourth","fifth","sixth"]
finalList = ""

#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()
Tweeted twitter.com/StackCodeReview/status/684603152205778944
variables included that were previously missed; 'guestNumber', 'number', 'guestList'
Source Link

I’m teaching myself programming, using Python as my initial weapon of choice.

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 .csv file.

Below is my code. It works.

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.

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 .csv, would simply end up as one record per cell (Excel) – this is not the desired result.

guestNames = ""
guestList = []
number = 0
guestNumber = ["second","third","fourth","fifth","sixth"]
finalList = ""

#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()

I’m teaching myself programming, using Python as my initial weapon of choice.

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 .csv file.

Below is my code. It works.

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.

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 .csv, would simply end up as one record per cell (Excel) – this is not the desired result.

#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()

I’m teaching myself programming, using Python as my initial weapon of choice.

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 .csv file.

Below is my code. It works.

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.

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 .csv, would simply end up as one record per cell (Excel) – this is not the desired result.

guestNames = ""
guestList = []
number = 0
guestNumber = ["second","third","fourth","fifth","sixth"]
finalList = ""

#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()
Source Link

Python: Writing lists to .csv file

I’m teaching myself programming, using Python as my initial weapon of choice.

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 .csv file.

Below is my code. It works.

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.

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 .csv, would simply end up as one record per cell (Excel) – this is not the desired result.

#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()