我希望将数据输入到CSV文件中,到目前为止已经完成了这一工作。我现在遇到的唯一问题是,当用户将不正确的信息输入到字符串时,只有输入(例如。这个程序成功地再次提示用户只输入字符串(例如。(名字=比夫)
但是,当我查看CSV文件时,会记录不正确的值,而不是更正的输入。我该怎么纠正呢?
import csv
surname = input('\nSurname:')
surname_checker(surname) #I wrote a seperate function that correctly checks the input to judge if it is correct and reprompt if not
s = surname.capitalize()
with open('Try.csv','a',newline='') as csvfile:
appendCSV = csv.writer(csvfile)
appendCSV.writerow([s])
csvfile.close()如果输入b12f,则Biff正确地输入:
Surname:b12f
Please define Surname only in letters
Surname:biff
>>> print(surname)
b12f发布于 2016-05-02 20:28:47
这不是CSV特有的。使用print(surname)应该是一个标志-它没有对CSV文件做任何事情,但它仍然打印错误的东西。
您的自定义函数需要返回更正的姓氏,并且需要用它替换存储的姓氏。
有点像surname = surname_checker(surname)
https://stackoverflow.com/questions/36991026
复制相似问题